@import url("reset.css");


/*
------------------------------------------

	COLORS

------------------------------------------

Red: #e3280e
Gold: #ffaa4e
Text: #6e6e6e
Gray: #afafaf
Teal: #1baea9

*/


/*
------------------------------------------

	TYPOGRAPHY

------------------------------------------
*/

body {
	background-color: #999; /* remove once wrapper is full-width */
	color: #717879; /* text color */
	font-size: 16px;
	font-family: 'fira-sans', 'Franklin Gothic Medium', 'Franklin Gothic', 'ITC Franklin Gothic', Arial, sans-serif;
	font-weight: 400;
	font-style: normal;
	position: relative;
}

a{
	color: #1baea9;
}

	a.box{
		display: inline-block;
		font-size: .875em;
		text-transform: uppercase;
		text-decoration: none;
		padding: 1.125em 1.75em;
		background: #1baea9;
		color: #fff;
		-webkit-box-shadow: 6px 6px 12px -7px rgba(0,0,0,0.27);
		-moz-box-shadow: 6px 6px 12px -7px rgba(0,0,0,0.27);
		box-shadow: 6px 6px 12px -7px rgba(0,0,0,0.27);
		transition: all 0.125s ease-in-out;
		position: relative;
	}

		a.box:after{
			font-family: "hillis-carnes" !important;
			content: "\6c";
			font-style: normal !important;
			font-weight: normal !important;
			font-variant: normal !important;
			text-transform: none !important;
			speak: none;
			line-height: 1;
			-webkit-font-smoothing: antialiased;
			-moz-osx-font-smoothing: grayscale;

			padding-top: .0625em;
			padding-left: .675em;
			font-size: .8em;
			line-height: .8em;
		}

		a.box:hover{
			-webkit-box-shadow: none;
			-moz-box-shadow: none;
			box-shadow: none;
		}

	a[href^="tel:"] {
	  color: inherit !important;
	  text-decoration: inherit !important;
	  font-family: inherit !important;
	  font-size: inherit !important;
	  letter-spacing: inherit !important;
	}

p{
	font-size: 0.875em;
	line-height: 1.875;
	margin-bottom: 1.5em;
}

	p em{
		font-style: italic;
	}

	p strong{
		font-weight: 500;
	}

h1{
	font-weight: 200;
	font-size: 5.375em;
}

h2{
	font-size: 2.25em;
	line-height: 1.1875;
	margin-bottom: 1.75em;
}

h3{
	font-size: 1.125em;
	color: #afafaf;
}

	h3 em{
		font-style: italic;
	}

h4{
	font-size: 0.9125em;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 1px;
}

h5{
	font-size: 0.75em;
	line-height: 1.5;
	margin-bottom: 1.5em;
}


/*
------------------------------------------

	STRUCTURE

------------------------------------------
*/

/* WRAPPER */
#wrapper{
	width: 100%;
	background: #fff;
	max-width: 100%; /* 1295px; */
	overflow: hidden;
	margin: 0 auto;
}

/* HEADER */
header{
	width: 100%;
	height: 6.25em;
	background: #fff;
	position: relative;
	box-sizing: border-box;
	padding: 0 3.75em;

	transition: background 0.125s ease;
	-webkit-transition: background 0.125s ease;
	-moz-transition: background 0.125s ease;
	-ms-transition: background 0.125s ease;
}

header a.request {
	position: absolute;
	top: 14px;
	right: 6em;

	color: #e3280e;
	font-size: 11px;
}

	header.menu-open{
		background: #e3280e;
	}

	header .logo{
		width: 12.8185328185328%;
		max-width: 12.5em;
		min-width: 10.375em;
		position: absolute;
		top: 50%;
		left: 3.75em;
		transform: translate(0, -49.5%);
		-webkit-transform: translate(0, -49.5%);
		-moz-transform: translate(0, -49.5%);
		-ms-transform: translate(0, -49.5%);
	}

		header .logo a{
			font-size: 11em;
			text-decoration: none;
			color: #e3280e;
			line-height: .75em;
			transition: color 0.25s ease;
			-webkit-transition: color 0.5s ease;
			-moz-transition: color 0.5s ease;
			-ms-transition: color 0.5s ease;
		}

			header.menu-open .logo a{
				color: #fff;
			}

	@media all and (-ms-high-contrast:none){ /* IE 10 & 11 */
		header .logo{
			top: 57% !important;
		}
	}

	/* SOCIAL */
	header .social{
		float: right;
		position: relative;
		top: 60%;
		transform: translate(0, -55%);
		-webkit-transform: translate(0, -55%);
		-moz-transform: translate(0, -55%);
		-ms-transform: translate(0, -55%);
		margin-left: 2.5em;
	}

		header .social ul{
			list-style: none;
		}

			header .social ul li{
				float: left;
				margin-right: .5em;
			}

				header .social ul li a{
					display: block;
					width: 2.125em;
					height: 2.125em;
					background: #8d8d8d;
					text-decoration: none;
					color: #fff;
					text-align: center;
					font-size: .9375em;

					transition: background 0.25s ease;
					-webkit-transition: background 0.25s ease;
					-moz-transition: background 0.25s ease;
					-ms-transition: background 0.25s ease;
				}

					header .social ul li a:hover{
						background: #e3280e;
					}

					header .social ul li a span:before{
						position: relative;
						top: .5em;
					}

	/* MOBILE NAV */
	header .mobile-nav{
		position: relative;
		top: 50%;

		transform: translate(0, -50%) rotate(0deg);
		-webkit-transform: translate(0, -50%) rotate(0deg);;
		-moz-transform: translate(0, -50%) rotate(0deg);;
		-ms-transform: translate(0, -50%) rotate(0deg);;

		float: right;

		cursor: pointer;
		display: none;

		width: 30px;
	    height: 24px;

	    -webkit-transition: .5s ease-in-out;
	    -moz-transition: .5s ease-in-out;
	    -o-transition: .5s ease-in-out;
	    -ms-transition: .5s ease-in-out;
	    transition: .5s ease-in-out;
	}

		.mobile-nav span{
			display: block;
			position: absolute;
			height: 4px;
			width: 100%;
			background: #e3280e;
			opacity: 1;
			left: 0;
			-webkit-transform: rotate(0deg);
			-moz-transform: rotate(0deg);
			-o-transform: rotate(0deg);
			transform: rotate(0deg);

			-webkit-transition: .25s ease-in-out;
			-moz-transition: .25s ease-in-out;
			-o-transition: .25s ease-in-out;
			-ms-transition: .25s ease-in-out;
			transition: .25s ease-in-out;
		}

		.mobile-nav span:nth-of-type(1) {
			top: 0px;
		}

		.mobile-nav span:nth-of-type(2),
		.mobile-nav span:nth-of-type(3) {
			top: 10px;
		}

		.mobile-nav span:nth-of-type(4) {
			top: 20px;
		}

		header.menu-open .mobile-nav span:nth-of-type(1) {
			top: 10px;
			width: 0%;
			left: 50%;
		}

		header.menu-open .mobile-nav span:nth-of-type(2) {
			-webkit-transform: rotate(45deg);
			-moz-transform: rotate(45deg);
			-o-transform: rotate(45deg);
			-ms-transform: rotate(45deg);
			transform: rotate(45deg);
		}

		header.menu-open .mobile-nav span:nth-of-type(3) {
			-webkit-transform: rotate(-45deg);
			-moz-transform: rotate(-45deg);
			-o-transform: rotate(-45deg);
			-ms-transform: rotate(-45deg);
			transform: rotate(-45deg);
		}

		header.menu-open .mobile-nav span:nth-of-type(4) {
			top: 12px;
			width: 0%;
			left: 50%;
		}

	/* NAVIGATION */
	header nav.primary{
		width: 38em;
		float: right;
		position: relative;
		top: 60%;
		transform: translate(0, -50%);
		-webkit-transform: translate(0, -50%);
		-moz-transform: translate(0, -50%);
		-ms-transform: translate(0, -50%);
	}

		nav.primary ul{
			list-style: none;
		}

			nav.primary ul li{
				margin-right: 2.25em;
				float: left;
			}

				nav.primary ul li:last-child{
					margin-right: 0;
				}

				nav.primary ul li a{
					font-size: .875em;
					font-weight: 500;
					text-decoration: none;
					text-transform: uppercase;
					letter-spacing: 1px;
					color: #434343;

					transition: color 0.25s ease;
					-webkit-transition: color 0.25s ease;
					-moz-transition: color 0.25s ease;
					-ms-transition: color 0.25s ease;
				}

					nav.primary ul li.current_page_parent a,
					body.single-service nav.primary ul li.page-item-20 a,
					body.single-project nav.primary ul li.page-item-22 a,
					nav.primary ul li a:hover{
						color: #e3280e;
					}

					nav.primary ul li.search span{
						font-size: 0.9375em;
						color: #434343;
						cursor: pointer;

						transition: color 0.25s ease;
						-webkit-transition: color 0.25s ease;
						-moz-transition: color 0.25s ease;
						-ms-transition: color 0.25s ease;
					}

						nav.primary ul li.search span:hover{
							color: #e3280e;
						}

						nav.primary ul li.search span:before{
							position: relative;
							top: -0.1em;
						}

						@media all and (-ms-high-contrast:none){ /* IE 10 & 11 */
							nav.primary ul li.search span:before{
								top: 0 !important;
							}
						}


	/* MOBILE MENU */
	#mobile-menu{
		width: 100%;
		height: 0px;
		background: #e3280e;
		box-sizing: border-box;
		padding: 0 3.75em;
		-webkit-transition: all 400ms cubic-bezier(0.165, 0.840, 0.440, 1.000);
		-moz-transition: all 400ms cubic-bezier(0.165, 0.840, 0.440, 1.000);
		-o-transition: all 400ms cubic-bezier(0.165, 0.840, 0.440, 1.000);
        transition: all 400ms cubic-bezier(0.165, 0.840, 0.440, 1.000); /* easeOutQuart */

        position: relative;
	}

		#mobile-menu.open{
			height: 70px;
			-webkit-transition: all 500ms cubic-bezier(0.165, 0.840, 0.440, 1.000);
			-moz-transition: all 500ms cubic-bezier(0.165, 0.840, 0.440, 1.000);
			-o-transition: all 500ms cubic-bezier(0.165, 0.840, 0.440, 1.000);
			transition: all 500ms cubic-bezier(0.165, 0.840, 0.440, 1.000); /* easeOutQuart */
		}

		#mobile-menu .menu-content{
			display: none;
			opacity: 0;
			transition: all 0.5s ease;
			-webkit-transition: all 0.5s ease;
			-moz-transition: all 0.5s ease;
			-ms-transition: all 0.5s ease;
		}

			#mobile-menu .menu-content.visible{
				opacity: 1;
			}

			#mobile-menu .menu-content .social-search{
				width: 25%;
				height: 2em;
				float: left;
			}

				#mobile-menu .menu-content .social-search ul{
					float: right;
					list-style: none;

					display: -webkit-box;
					display: -ms-flexbox;
					display: flex;
					-ms-flex-wrap: wrap;
								flex-wrap: wrap;
					-webkit-box-pack: end;
					-ms-flex-pack: end;
												justify-content: flex-end;
				}

					#mobile-menu .menu-content .social-search ul li{
						display: inline-block;
						text-align: center;
						margin-left: 0.75em;
						float: left;
					}

						#mobile-menu .menu-content .social-search ul li a{
							display: block;
							width: 1.875em;
							height: 1.875em;
							background: #fff;
							text-decoration: none;
							text-align: center;
							color: #e3280e;
						}

							#mobile-menu .menu-content .social-search ul li a span{
								color: #e3280e;
							}

								#mobile-menu .menu-content .social-search ul li a span:before{
									position: relative;
									top: .375em;
								}

						#mobile-menu .menu-content .social-search ul li span{
							color: #fff;
							cursor: pointer;

						}

							#mobile-menu .menu-content .social-search ul li span.hc-search{
								font-size: 1.125em;
								position: relative;
								top: .375em;
								margin-right: 0.375em
							}

			#mobile-menu .menu-content ul.pages{
				width: 75%;
				list-style: none;
				float: left;
				margin-top: .625em;
			}

				#mobile-menu .menu-content ul.pages li{
					display: inline-block;
					margin-right: 6.5%;
					text-align: left;
					float: left;
				}

					#mobile-menu .menu-content ul.pages li:nth-of-type(6){
						margin-right: 0;
					}

					#mobile-menu .menu-content ul.pages li:last-child{
						margin-top: 10px;
						margin-right: 0;
					}

					#mobile-menu .menu-content ul.pages li a{
						font-size: 0.875em;
						font-weight: 500;
						text-transform: uppercase;
						letter-spacing: 1px;
						text-decoration: none;
						color: #fff;
					}


/* SEARCH */
#search{
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(255,255,255,0.92);
	box-sizing: border-box;
	padding: 0 8%;

	position: absolute;
	top: 0;
	left: 0;
	z-index: 200;

	overflow: hidden;
	display: none;
}

	#search .close{
		position: absolute;
		top: 2em;
		left: 2em;

		width: 30px;
		height: 24px;

		cursor: pointer;
	}

		#search .close span{
			position: absolute;
			width: 100%;
			height: 4px;
			left: 0;
			top: 10px;
			background: #e3280e;
		}

		#search .close span:first-child{
			-webkit-transform: rotate(-45deg);
			-moz-transform: rotate(-45deg);
			-o-transform: rotate(-45deg);
			-ms-transform: rotate(-45deg);
			transform: rotate(-45deg);
		}

		#search .close span:last-child{
			-webkit-transform: rotate(45deg);
			-moz-transform: rotate(45deg);
			-o-transform: rotate(45deg);
			-ms-transform: rotate(45deg);
			transform: rotate(45deg);
		}

	#search form{
		width: 100%;
		position: relative;
		top: 15em;
		left: 50%;
		text-align: center;
		transform: translate(-50%, 0);
		-webkit-transform: translate(-50%, 0);
		-moz-transform: translate(-50%, 0);
		-ms-transform: translate(-50%, 0);
		padding-top: .75em;
	}

		#search form input{
			display: inline-block;
			width: 90%;
			border: none;
			border-bottom: 4px solid #e3280e;
			background: transparent;
			box-sizing: border-box;
			padding: .175em 0 .225em 0;
			padding-right: 1.75em;
			font-family: 'fira-sans', 'Franklin Gothic Medium', 'Franklin Gothic', 'ITC Franklin Gothic', Arial, sans-serif;
			font-size: 4.5vw;
			text-align: left;
			letter-spacing: 1px;
			color: #e3280e;

			transform: translate(.5em, 0);
			-webkit-transform: translate(.5em, 0);
			-moz-transform: translate(.5em, 0);
			-ms-transform: translate(.5em, 0);
		}

		#search form input[type="submit"]{
			height: 0px;
			padding: 0;
			opacity: 0;
			visibility: hidden;
		}

			#search form input::-webkit-input-placeholder { color: #e3280e; }
			#search form input:-moz-placeholder { color: #e3280e; }
			#search form input::-moz-placeholder { color: #e3280e; }
			#search form input:-ms-input-placeholder { color: #e3280e; }

		#search form span{
			display: inline-block;
			font-size: 3.5vw;
			color: #e3280e;
			transform: translate(-120%,0);
			-webkit-transform: translate(-120%,0);
			-moz-transform: translate(-120%,0);
			-ms-transform: translate(-120%,0);
			cursor: pointer;
		}

			#search form span:before{
				position: relative;
				top: .125em;
			}


/* FOOTER */

footer{
	width: 100%;
	box-sizing: border-box;
	padding: 7.75% 3.75em 6.25% 3.75em; /* 100px @ 1295, 60px */
	background: #3d3d3d url('../img/hc_footer_bg.jpg') no-repeat center bottom;
	background-size: cover;
	position: relative;
}

li.search-social .social p.v-footer__link {
	margin-bottom: 0;
}

li.search-social .social p.v-footer__link + p {
	margin-top: 0;
}

footer .v-footer__link a {
	text-decoration: none;
	color: #fff;
}

footer .v-footer__link a:hover {
	text-decoration: underline;
}

	footer .logo{
		width: 17.4468085106383%;
		max-width: 13.75em;
		min-width: 10.625em;
		height: 100%;
		margin-right: 8.17021276595745%;
		position: relative;
		float: left;
	}

		footer .logo a{
			display: block;
		}

	footer ul.footer-primary{
		list-style: none;
		width: calc(91.75% - 13.75em);
		float: right;
	}

		ul.footer-primary li.contact{
			width: 31.2%;
			float: left;
			box-sizing: border-box;
			padding-right: 3.75%;
		}

			li.contact h4{
				color: #efefef;
			}

				li.contact h4 span.mobile{
					display: none;
				}

			li.contact .address{
				margin-top: 4.75em;
				color: #efefef;
				font-weight: 500;
			}

		ul.footer-primary li.newsletter{
			width: 26.25%;
			float: left;
		}

			li.newsletter h4{
				color: #efefef;
			}


			li.newsletter form{
				margin-top: 2.875em;
			}

				li.newsletter form input{
					width: 100%;
					background: transparent;
					border: 2px solid #ffaa4e;
					font-size: .75em;

					box-sizing: border-box;
					margin-bottom: 1.75em;
					padding: 1em 1.5em;
					color: #efefef;
				}

					li.newsletter form input#fieldEmail{
						margin-bottom: 2.25em;
					}

					li.newsletter form input::-webkit-input-placeholder { color: #fff; }
					li.newsletter form input:-moz-placeholder { color: #fff; }
					li.newsletter form input::-moz-placeholder { color: #fff; }
					li.newsletter form input:-ms-input-placeholder { color: #fff; }

				li.newsletter form button{
					background: #1baea9 url('../img/triangle.png') no-repeat;
					background-size: 10px 11px;
					background-position: 78% 14px;
					color: #fff;
					border: none;
					font-size: .7325em;
					text-transform: uppercase;
					letter-spacing: 1px;
					box-sizing: border-box;
					padding: 1.125em 3.25em 1.125em 1.75em;
					cursor: pointer;
					position: relative;
					z-index: 100;
				}

		ul.footer-primary li.search-social{
			width: calc(100% - 58.54%);
			height: 100%;
			box-sizing: border-box;
			float: left;
			padding-left: 7%;
			position: relative;
		}

			li.search-social form{
				position: relative;
			}

				li.search-social form input{
					width: 100%;
					background: transparent;
					box-sizing: border-box;
					padding-top: 0;
					padding-left: 1.75em;
					padding-bottom: 1.0875em;
					border: none;
					border-bottom: 2px solid #ffaa4e;
					font-size: .875em;
					font-weight: 500;
					color: #fff;
				}

					li.search-social form input::-webkit-input-placeholder { display: none; color: transparent;}
					li.search-social form input:-moz-placeholder { display: none; color: transparent; }
					li.search-social form input::-moz-placeholder { display: none; color: transparent; }
					li.search-social form input:-ms-input-placeholder { display: none; color: transparent; }

					@media all and (-ms-high-contrast:none){ /* IE 10 & 11 */

						li.search-social form input::-webkit-input-placeholder { display: block; color: transparent;}
						li.search-social form input:-moz-placeholder { display: block; color: transparent; }
						li.search-social form input::-moz-placeholder { display: block; color: transparent; }
						li.search-social form input:-ms-input-placeholder { display: block; color: transparent; }

					}

					li.search-social form input[type="submit"]{
						height: 0px;
						padding: 0;
						opacity: 0;
						visibility: hidden;
					}

					li.search-social form span{
						display: block;
						font-size: .875em;
						color: #fff;
						transform: translate(-120%, 0em);
						-webkit-transform: translate(-120%, 0em);
						-moz-transform: translate(-120%,0);
						-ms-transform: translate(-120%,0);
						cursor: pointer;
						position: absolute;
						left: 1.25em;
						top: 0;
					}

						li.search-social form span:before{
							position: relative;
						}


			li.search-social div.social{
				width: 85%;
				position: absolute;
				bottom: 0;

				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-orient: vertical;
				-webkit-box-direction: normal;
				-ms-flex-direction: column;
								flex-direction: column;
				-webkit-box-align: end;
				-ms-flex-align: end;
								align-items: flex-end;
			}

				li.search-social .social p{
					display: inline-block;
					margin-top: .5em;
					margin-bottom: 0;
					color: #fff;
					float: right;
					margin-bottom: 12px;
				}

					li.search-social .social p span{
						display: none;
					}

				li.search-social .social ul{
					list-style: none;
					float: right;
				}

					li.search-social .social ul li{
						display: block;
						float: left;
						position: relative;
						margin-right: .5em;
					}

						li.search-social .social ul li a{
							width: 2.125em;
							height: 2.125em;
							background: #8e8e8e;
							text-decoration: none;
							color: #fff;
							text-align: center;
							font-size: .9375em;

							display: -webkit-box;
							display: -ms-flexbox;
							display: flex;
							-webkit-box-pack: center;
										-ms-flex-pack: center;
														justify-content: center;
							-webkit-box-align: center;
										-ms-flex-align: center;
														align-items: center;
						}
						li.search-social .social ul li:last-of-type{
							margin-right: 0;
						}

							li.search-social .social ul li a span:before{
								position: relative;
								top: .5em;
							}

		ul.footer-primary li.contact h4:after,
		ul.footer-primary li.newsletter h4:after{
			display: block;
			content: '';
			width: 2.5em;
			height: 2px;
			background: #ffaa4e;
			position: relative;
			left: 0;
			bottom: -1.25em;
		}

	footer .credits{
		width: 100%;
		float: left;
		position: relative;
		bottom: 1em;
	}

		.credits p{
			display: inline-block;
			color: #efefef;
			font-size: .725em;
			letter-spacing: 0.03125em;
			margin-bottom: 0;
		}

			.credits p a{
				color: #efefef;
				text-decoration: none;
			}

				.credits p a:hover{
					text-decoration: underline;
				}


				/*
				------------------------------------------

					ICONS

				------------------------------------------
				*/
				[class^="hcea-icon-"], [class*=" hcea-icon-"] {
					display: inline-block;
					width: 1em;
					height: 1em;
					stroke-width: 0;
					stroke: currentColor;
					fill: currentColor;
				}

				.hcea-icon-instagram {
					width: 0.857421875em;
				}

				.hcea-icon-linkedin {
					width: 0.857421875em;
				}

				.hcea-icon-facebook {
					width: 0.587890625em;
				}

				.hcea-icon-twitter {
					width: 0.9287109375em;
				}
				header .social ul li a.social-icon,
				#mobile-menu .menu-content .social-search ul li a.social-icon {
					display: -webkit-box;
					display: -ms-flexbox;
					display: flex;
					-webkit-box-pack: center;
								-ms-flex-pack: center;
												justify-content: center;
					-webkit-box-align: center;
								-ms-flex-align: center;
												align-items: center;
				}


/*
------------------------------------------

	MEDIA QUERIES

------------------------------------------
*/

@media only screen
and (min-width: 75em){ /* 1200px */

	/* Search */
	#search form input{
		font-size: 3.5em;
	}

	#search form span{
		font-size: 2.5em;
	}

}


@media only screen
and (min-width: 80.9375em){ /* 1295px */

	/* Header */
	header .logo a{
		font-size: 13.75vw;
	}

}

@media only screen
and (min-width: 93.75em){ /* 1500px */

	/* Header */
	header .logo a{
		font-size: 13em;
	}

}


@media only screen
and (max-width: 75em){ /* 1200px */

	/* Footer */
	li.contact h4 span{
		display: none;
	}

		li.contact h4 span.mobile{
			display: inline-block;
		}

	ul.footer-primary li.newsletter{
		width: 30.25%;
	}

	ul.footer-primary li.search-social{
		width: calc(96% - 58.54%);
	}

}


@media only screen
and (min-width: 64em)
and (max-width: 73.75em){ /* 1024 - 1180px */

	/* Footer */
	li.search-social .social p{
		float: none;
	}

	li.search-social .social ul{
		float: none;
	}

}


@media only screen
and (max-width: 68.75em){ /* 1100px */

	/* Navigation */
	header nav.primary{
		width: 36em;
	}

		nav.primary ul li{
			margin-right: 1.875em;
		}

	/* Social */
	header .social{
		margin-left: 1.75em;
	}

}

@media only screen
and (max-width: 64em){ /* 1024px */

	/* Typography */
	h2{ font-size: 1.875em; }
	p{ font-size: 0.8125em; }

}


@media only screen
and (max-width: 71.875em){ /* 1150px */

	/* Header */
	header nav.primary{ display: none; }
	header .social{ display: none; }

	header .mobile-nav{ display: block; }

		header.menu-open .mobile-nav span{ background: #fff; }

	header a.request {
		display: none;
	}


	/* Footer */
	footer .logo{ display: none; }

	footer ul.footer-primary{
		width: 100%;
	}

	footer .credits{
		bottom: 0;
		margin-top: 2em;
	}

}


@media only screen
and (max-width: 56.25em){ /* 900px */

	/* Header */
	header{
		padding-left: 2.375em;
		padding-right: 2.375em;
	}

		header .logo{
			left: 2.375em
		}

	/* Mobile Menu */
	#mobile-menu{
		padding: 0 2.375em;
	}

	/* Search */
	#search form input{
		font-size: 2.5em;
	}

	#search form span{
		font-size: 1.96875em;
	}

	/* Footer */
	footer{
		padding-left: 2.375em;
		padding-right: 2.375em;
	}

}


@media only screen
and (max-width: 50em){ /* 800px */

	/* Mobile Menu */

	#mobile-menu .menu-content .social-search{
		width: 7.8125em;
	}

	#mobile-menu.open{
		height: 80px;
	}

	#mobile-menu .menu-content ul.pages{
		width: calc(100% - 7.8124em);
		margin-top: 0;
	}

	#mobile-menu .menu-content .social-search ul li:nth-child(n+4),
	#mobile-menu .menu-content .social-search ul li:nth-child(n+5){
		margin-top: 10px;
	}

		#mobile-menu .menu-content ul.pages li{
			display: inline-block;
			width: 33.3%;
			margin-right: 0;
			margin-bottom: .5em;
		}

			#mobile-menu .menu-content ul.pages li a{
				font-size: 0.875em;
			}

				#mobile-menu .menu-content ul.pages li:last-child{
						margin-top: 0;
						width: 100%;
					}

}


@media only screen
and (max-width: 47.9375em){ /* 767px */

	li.search-social .social p{
		float: left;
	}

	/* Typography */
	h2{ font-size: 1.75em; }
	p{ font-size: 0.75em; }

	/* Footer */
	ul.footer-primary li.contact{
		width: 50%;
	}

	ul.footer-primary li.newsletter{
		width: 50%;
	}

	ul.footer-primary li.search-social{
		width: 100%;
		margin-top: 2em;
		padding-left: 0;
	}

	footer .credits{ display: none;}

	footer.social.group {
		display: flex;
	}

	p.v-footer__link {
		width: 100%;
	}



	li.search-social div.social{
		width: 100%;
		position: relative;
		margin-top: 1em;
	}

		li.search-social .social p {
			width: 100%;
			float: none;
			margin-top: 0;
		}

			li.search-social .social p span.medium{
				display: block;
			}

				li.search-social .social p span a{
					color: #efefef;
					text-decoration: none;
				}

					li.search-social .social p span a:hover{
						text-decoration: underline;
					}

		li.search-social .social ul{
			position: absolute;
			bottom: .375em;
			right: 0;
		}


}


@media only screen
and (max-width: 43.75em){ /* 700px */

	/* Header */
	header{
		padding-left: 1.75em;
		padding-right: 1.75em;
	}

		header .logo{
			left: 1.75em
		}


	/* Mobile Menu */
	#mobile-menu{
		padding: 0 1.75em;
	}

	/* Footer */
	footer{
		padding-left: 1.75em;
		padding-right: 1.75em;
	}

}


@media only screen
and (max-width: 37.5em){ /* 600px */

	/* WP Admin bar fix */
	html #wpadminbar{
		position: fixed;
	}

	/* Typography */
	h2{
		font-size: 1.5em;
	}

	/* Footer */
	footer{
		padding-top: 3.25em;
		padding-bottom: 3.25em;
	}

	li.search-social .social p span.medium{
		display: none;
	}

	li.search-social .social p span.mobile{
		display: block;
	}

}


@media only screen
and (max-width: 33.125em){ /* 530px */

	ul.footer-primary li.contact{
		width: 100%;
	}

		li.contact .address{
			margin-top: 2.25em;
		}

	ul.footer-primary li.newsletter{
		width: 100%;
		margin-top: .75em;
	}

	ul.footer-primary li.search-social{
		margin-top: 2.25em;
	}

}


@media only screen
and (max-width: 31.25em){ /* 500px */

	/* Typography */
	h2{ font-size: 1.375em; }

	a.box{
		padding: .9375em 1.375em;
	}

	/* Header */
	header{
		padding-left: 1.4125em;
		padding-right: 1.4125em;
	}

		header .logo{
			left: 1.4125em
		}

	/* Mobile Menu */
	#mobile-menu{
		padding: 0 1.4125em;
	}


	/* MOBILE NAV */
	header .mobile-nav{
		width: 26px;
	    height: 19px;
	}

		.mobile-nav span{
			height: 3px;
		}

		.mobile-nav span:nth-child(1) {
			top: 0px;
		}

		.mobile-nav span:nth-child(2),
		.mobile-nav span:nth-child(3) {
			top: 8px;
		}

		.mobile-nav span:nth-child(4) {
			top: 16px;
		}

		header.menu-open .mobile-nav span:nth-child(1) {
			top: 8px;
		}

		header.menu-open .mobile-nav span:nth-child(4) {
			top: 8px;
		}

	/* SEARCH */
	#search form{
		top: 12em;
	}

	#search form input{
		font-size: 2em;
	}

	#search form span{
		font-size: 1.5em;
	}

	/* Footer */
	footer{
		padding-left: 1.4125em;
		padding-right: 1.4125em;
	}

}


@media only screen
and (max-width: 30em){ /* 480px */


	/* Mobile Menu */
	#mobile-menu.open{
		height: 390px;
	}

	#mobile-menu .menu-content .social-search{
		margin-top: .75em;
		text-align: left;
		position: relative;
	}

		#mobile-menu .menu-content .social-search ul{
			float: none;
			text-align: center;
		}

			#mobile-menu .menu-content .social-search ul li.search{
				margin-left: 0;
			}

	#mobile-menu .menu-content ul.pages{
		width: 100%;
	}

		#mobile-menu .menu-content ul.pages li{
			width: 100%;
			margin-bottom: .75em;
			padding-bottom: .75em;
			border-bottom: 1px solid rgba(255,255,255,0.5);
			text-align: left;
		}

			#mobile-menu .menu-content ul.pages li a{
				display: block;
				font-size: 1.25em;
				width: 100%;
			}

}


@media only screen
and (max-width: 25em){ /* 400px */

	li.search-social .social ul{ display: none; }

}


@media only screen
and (max-width: 21.875em){ /* 350px */

	/* Header */
	header .logo a{
		font-size: 10em;
	}

	/* SEARCH */
	#search form input{
		font-size: 1.5em;
	}

	#search form span{
		font-size: 1.125em;
	}

	/* Footer
	li.search-social .social p{
		font-size: .675em;
	}
	*/

}

@media only screen
and (max-width: 30em){ /* 800px */

	/* Mobile Menu */

	#mobile-menu .menu-content .social-search{
		width: 100%;
	}

	#mobile-menu .menu-content .social-search ul{

		list-style: none;

		display: -webkit-box;
		display: -ms-flexbox;
		display: block;
		-ms-flex-wrap: wrap;
					flex-wrap: wrap;
		-webkit-box-pack: end;
		-ms-flex-pack: end;
									justify-content: flex-end;
	}
	#mobile-menu .menu-content .social-search ul li:nth-child(n+4),
	#mobile-menu .menu-content .social-search ul li:nth-child(n+5) {
		margin-top: 0;
	}
}




.v-site-alert {
	box-sizing: border-box;
	position: relative;
	height: 78px;
	padding: 25px 0;
	color: #fff;
	font-weight: 600;
	font-style: italic;
	font-size: 1.375rem;
	text-align: center;
	background: #e12b1f;
}

.v-site-alert--hidden {
	display: none;
}

.v-site-alert__wrapper {
	padding: 0 6.25rem;
}

.v-site-alert p {
	line-height: 1.3;
}

.v-site-alert a {
	color: #fff;
	text-decoration: none;
	border-bottom: 1px solid;
}

.v-site-alert a:hover {
	text-decoration: none;
	opacity: .9;
}

.v-site-alert :first-child {
	margin-top: 0;
}

.v-site-alert :last-child {
	margin-bottom: 0;
}

.v-site-alert__close {
	position: absolute;
	top: 50%;
	right: 3.75rem;
	margin-top: -12px;
	width: 24px;
	height: 24px;
	background: none;
	border: 0;
}

.v-site-alert__close-text {
	position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  border: 0;
}

.v-site-alert__close::before,
.v-site-alert__close::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 30px;
	height: 3px;
	margin: -1.5px 0 0 -15px;
	background: #fff;
	transform: rotate(45deg);
}

.v-site-alert__close::after {
	transform: rotate(-45deg);
}

@media screen and (max-width: 1023px) {
	.v-site-alert__close {
		width: 16px;
		height: 16px;
		margin-top: -8px;
	}

	.v-site-alert__close::before,
	.v-site-alert__close::after {
		width: 22px;
		margin-left: -11px;
	}
}

@media screen and (max-width: 900px) {
	.v-site-alert__wrapper {
		padding: 0 calc(2.375rem + 26px);
	}

	.v-site-alert__close {
		right: 2.375rem;
	}
}

@media screen and (max-width: 700px) {
	.v-site-alert__wrapper {
		padding: 0 calc(1.75rem + 26px);
	}

	.v-site-alert__close {
		right: 1.75rem;
	}
}

@media screen and (max-width: 550px) {
	.v-site-alert {
		padding: 18px 0;
		height: 59px;
		font-size: 1.125rem;
	}
}

@media screen and (max-width: 500px) {
	.v-site-alert__wrapper {
		padding: 0 calc(1.4125rem + 26px);
	}

	.v-site-alert__close {
		right: 1.4125rem;
	}
}

@media screen and (max-width: 350px) {
	.v-site-alert {
		text-align: left;
	}

	.v-site-alert__wrapper {
		padding-left: 1.4125rem;
	}
}

.v-select-child-wrap,
.v-select-child,
.v-hidden-field + br {
	display: none;
}

.v-button {
	display: inline-block;
	width: auto;
	height: auto;
	padding: 1.29285714em 1.78571429em;
	font-size: 0.875rem;
	color: #fff;
	line-height: 1.2;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none;
	background: #1BAEA9;
	border: 0;
	border-radius: 0;
	transition: background-color .1s ease-out;
}

.v-button--arrow {
	display: inline-flex;
	align-items: center;
	gap: 0.85714286em;
}

.v-button--arrow::after {
	content: "\6c";
	font-family: "hillis-carnes" !important;
	font-style: normal !important;
	font-weight: normal !important;
	font-variant: normal !important;
	text-transform: none !important;
	speak: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;

	font-size: .8em;
	line-height: .8em;
	transform: translateY(15%);
}

.v-button:hover {
	background: #17a19c;
}

@media screen and (max-width: 550px) {
	.v-button {
		padding: .93571429rem 1.5625rem;
	}
}

.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	white-space: nowrap;
	border: 0;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	clip-path: inset(50%);
	overflow: hidden;
}

.v-container {
	max-width: 1600px;
	padding: 0 clamp(20px, 9.57746479vw - 16px, 122px);
	margin-left: auto;
	margin-right: auto;
}