@charset "utf-8";
/* CSS Document */

/* Styles written by Jacob Bearce | jacob@weblinxinc.com | jacob@bearce.me */

#navWrapper {
	background: #FFF;
}

.homeHeader #navWrapper {
	background: none;
}

@media screen and (max-width: 639px) {
	#navWrapper {
		display: none;
	}
}

	#navWrapper nav {
		background: url("../img/background-transparent-black.png");
		background: rgba(0,0,0,0.85);
		float: left;
		position: relative;
		width: 100%;
		z-index: 999;
	}

	.homeHeader #navWrapper nav {
		background: rgba(0,0,0,0.5);
	}

		#navWrapper nav ul {
			font-size: 18px;
			font-weight: 900;
             justify-content: space-around;
			line-height: 20px;
			list-style: none;
			margin: 0 auto;
             max-width: 1400px;
			padding: 0;
			position: relative;
			text-align: center;
			text-transform: uppercase;
			width: auto;
			z-index: 999;
			/* css3 */
			display: -webkit-box;
			display: -webkit-flex;
			display: -moz-box;
			display: -ms-flexbox;
			display: flex;
		}

		@media screen and (max-width: 1279px) {
			#navWrapper nav ul {
				font-size: 14px;
				line-height: 16px;
			}
		}

		@media screen and (max-width: 959px) {
			#navWrapper nav ul {
				font-size: 12px;
				line-height: 14px;
			}
		}

		@media screen and (max-width: 852px) {
			#navWrapper nav ul {
				font-size: 10px;
				line-height: 12px;
			}
		}

		@media screen and (max-width: 767px) {
			#navWrapper nav ul {
				font-size: 8px;
				line-height: 10px;
			}
		}

			#navWrapper nav ul li {
				max-width: 180px;
				padding: 0;
				position: relative;
				/* css3 */
				display: -webkit-box;
				display: -webkit-flex;
				display: -moz-box;
				display: -ms-flexbox;
				display: flex;
                 flex: 1 1 auto;
				-webkit-transition: background 0.25s;
				transition: background 0.25s;
			}

			@media screen and (max-width: 1279px) {
				#navWrapper nav ul li {
					max-width: 150px;
				}
			}

			@media screen and (max-width: 959px) {
				#navWrapper nav ul li {
					max-width: 125px;
				}
			}

			@media screen and (max-width: 767px) {
				#navWrapper nav ul li {
					max-width: 100px;
				}
			}

				#navWrapper nav ul li:before {
					display: none;
				}

				#navWrapper nav ul li a {
					color: #FFF;
					display: block;
					max-width: 100%;
					padding: 16px 10px 17px;
					/* css3 */
					display: -webkit-box;
					display: -webkit-flex;
					display: -moz-box;
					display: -ms-flexbox;
					display: flex;
					-webkit-flex-align: center;
					-webkit-align-items: center;
					-ms-flex-align: center;
					align-items: center;
				}

				.no-flexbox #navWrapper nav ul li a,
				.no-flexboxlegacy #navWrapper nav ul li a {
					display: block;
				}

				#navWrapper nav ul li a:hover,
				#navWrapper nav ul li:hover > a {
					color: #DDD;
				}

				#navWrapper nav ul li ul {
					background: url("../img/background-transparent-red.png");
					background: rgba(255,25,0,0.85);
					display: block;
					float: none;
					font-size: 16px;
					font-weight: normal;
					left: -999em;
					margin-left: -125px;
					opacity: 0;
					padding: 5px 0;
					position: absolute;
					right: auto;
					text-transform: none;
					top: -999em;
					width: 250px;
					/* css3 */
					-webkit-transition: left 0s 0.25s, opacity 0.25s 0s, top 0s 0.25s;
					transition: left 0s 0.25s, opacity 0.25s 0s, top 0s 0.25s;
				}

				@media screen and (max-width: 1279px) {
					#navWrapper nav ul li ul {
						font-size: 14px;
						line-height: 16px;
					}
				}

				@media screen and (max-width: 959px) {
					#navWrapper nav ul li ul {
						font-size: 12px;
						line-height: 14px;
					}
				}

				@media screen and (max-width: 852px) {
					#navWrapper nav ul li ul {
						font-size: 10px;
						line-height: 12px;
						margin-left: -100px;
						width: 200px;
					}
				}

				@media screen and (max-width: 767px) {
					#navWrapper nav ul li ul {
						font-size: 8px;
						line-height: 10px;
					}
				}

				#navWrapper nav ul li:hover > ul {
					left: 50%;
					opacity: 1;
					top: 100%;
					/* css3 */
					-webkit-transition: left 0s 0s, opacity 0.25s 0s, top 0s 0s;
					transition: left 0s 0s, opacity 0.25s 0s, top 0s 0s;
				}

					#navWrapper nav ul li ul:before {
						border-left: 10px solid transparent;
						border-right: 10px solid transparent;
						border-bottom: 10px solid rgba(255,25,0,0.85);
						content: "\0020";
						display: block;
						height: 0;
						left: 50%;
						margin-left: -10px;
						position: absolute;
						top: -10px;
						width: 0;
					}

					#navWrapper nav ul li ul li {
						display: block;
						float: none;
						left: auto;
						max-width: none;
					}

						#navWrapper nav ul li ul li a {
							display: block;
							padding: 5px 10px;
							/* css3 */
							-webkit-flex-align: stretch;
							-webkit-align-items: stretch;
							-ms-flex-align: stretch;
							align-items: stretch;
						}

			#navWrapper nav ul:after {
				clear: both;
				content: "\0020";
				display: block;
				visibility: hidden;
			}

		#navWrapper nav:after {
			clear: both;
			content: "\0020";
			display: block;
			visibility: hidden;
		}

	#navWrapper:after {
		clear: both;
		content: "\0020";
		display: block;
		visibility: hidden;
	}

#mobileNav {
	display: none;
	left: 100%;
	margin-left: -55px;
	height: 110px;
	overflow: hidden;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	z-index: 999;
	/* css3 */
	-webkit-flex-align: flex-start;
	-webkit-align-items: flex-start;
	-ms-flex-align: flex-start;
	align-items: flex-start;
	-webkit-transition: left 0.25s, height 0s 0.25s;
	transition: left 0.25s, height 0s 0.25s;
}

@media screen and (max-width: 639px) {
	#mobileNav {
		/* css3 */
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
	}
}

#mobileNav.open {
	left: 55px;
	height: 100%;
	/* css3 */
	-webkit-transition: left 0.25s, height 0s 0s, min-height 0s 0s;
	transition: left 0.25s, height 0s 0s, min-height 0s 0s;
}

	#mobileNav > button {
		background: #FF1A00;
		height: 45px;
		margin: 40px 0 0 10px;
		outline: none;
		position: relative;
		text-indent: -999em;
		width: 45px;
		/* css3 */
		-webkit-border-radius: 5px 0 0 5px;
		border-radius: 5px 0 0 5px;
		-webkit-box-shadow: 0px 3px 0px rgba(0,0,0,0.15);
		box-shadow: 0px 3px 0px rgba(0,0,0,0.15);
		-webkit-transition: background 0.25s;
		transition: background 0.25s;
	}

	#mobileNav.open > button {
		background: #2C2C2C;
	}

		#mobileNav > button:before,
		#mobileNav > button em,
		#mobileNav > button:after {
			background: #FFF;
			content: "\0020";
			display: block;
			height: 5px;
			left: 10px;
			position: absolute;
			right: 10px;
			/* css3 */
			-webkit-box-shadow: inset 0px 1px 1px rgba(0,0,0,0.4);
			box-shadow: inset 0px 1px 1px rgba(0,0,0,0.4);
		}

		#mobileNav > button:before {
			top: 12px;
		}

		#mobileNav > button em {
			top: 20px;
		}

		#mobileNav > button:after {
			top: 28px;
		}

	#mobileNav menu {
		background: #FF1A00;
		margin: 0;
		padding: 0;
		/* css3 */
		-webkit-align-self: stretch;
		-moz-align-self: stretch;
		-ms-align-self: stretch;
		align-self: stretch;
		-webkit-box-flex: 1;
		-webkit-flex: 1;
		-moz-box-flex: 1;
		-ms-flex: 1;
		flex: 1;
		-webkit-transition: background 0.25s;
		transition: background 0.25s;
	}

	#mobileNav.open menu {
		background: #2C2C2C;
	}

		#mobileNav menu nav {
			padding: 20px 0;
		}

			#mobileNav menu nav ul {
				color: #FFF;
				font-size: 16px;
				font-weight: 900;
				list-style: none;
				line-height: 20px;
				margin: 0;
				padding: 0 25px;
				text-transform: uppercase;
			}

				#mobileNav menu nav ul li {
					border-bottom: 1px solid #A0A0A0;
                    display: flex;
                    flex-wrap: wrap;
					padding: 0;
				}

					#mobileNav menu nav ul li:before {
						display: none;
					}

					#mobileNav menu nav ul li a {
						color: #FFF;
						display: block;
                        flex: 1 1 0%;
						padding: 10px 0;
					}

					#mobileNav menu nav ul li button {
                        background: none;
                        border-radius: 0;
                        flex: 0 0 auto;
                        margin: 0;
					}

					#mobileNav menu nav ul li ul {
                        flex: 0 0 100%;
						max-height: 0;
						overflow: hidden;
						padding-right: 0;
						/* css3 */
						-webkit-transition: border 0s 0.5s, max-height 0.5s;
						transition: border 0s 0.5s, max-height 0.5s;
					}

					#mobileNav menu nav ul li.open ul {
						border-top: 1px solid #A0A0A0;
						max-height: 1000px;
						/* css3 */
						-webkit-transition: border 0s 0s, max-height 1s;
						transition: border 0s 0s, max-height 1s;
					}

						#mobileNav menu nav ul li ul li {
						}

						#mobileNav menu nav ul li ul li:last-child {
							border-bottom: 0;
						}

							#mobileNav menu nav ul li ul li a {
							}

		#mobileNav menu form {
			background: #FFF;
			margin: 0 25px 20px 25px;
			/* css3 */
			-webkit-border-radius: 5px;
			border-radius: 5px;
			display: -webkit-box;
			display: -webkit-flex;
			display: -moz-box;
			display: -ms-flexbox;
			display: flex;
		}

			#mobileNav menu form input[type=search],
			#mobileNav menu form input[type=text] {
				background: none;
				border: 0;
				font-size: 16px;
				margin: 0;
				padding: 8px 15px;
				/* css3 */
				-webkit-border-radius: 0;
				border-radius: 0;
				-webkit-box-flex: 1;
				-webkit-flex: 1;
				-moz-box-flex: 1;
				-ms-flex: 1;
				flex: 1;
			}

			#mobileNav menu form input[type=submit] {
				background: transparent center center / auto 50% no-repeat url("../img/icon-search.png");
				height: 40px;
				margin: 0;
				padding: 0;
				text-indent: -999em;
				width: 70px;
			}

		#mobileNav menu address {
			padding: 0 0 20px 25px;
		}

			#mobileNav menu address p {
				color: #A0A0A0;
				font-family: "Adobe Garamond Pro", "adobe-garamond-pro", serif;
				font-size: 16px;
				font-weight: bold;
				line-height: 26px;
				margin: 0;
			}

				#mobileNav menu address p a,
				#mobileNav menu address p span {
					color: #FFF;
					font-family: "Lato", sans-serif;
					font-weight: normal;
				}

				#mobileNav menu address p a {
				}

				#mobileNav menu address p span {
				}
