/*******************************************************************
  GALLERY
*******************************************************************/

#content .gallery {
	margin: 30px 0;
	text-align: justify;
}

#content .magnific.gallery:after {
	content: ' ';
	display: inline-block;
	width: 100%;
}

#content .gallery a.visible {
	max-width: 24%;
	box-shadow: none;
	margin-left:0;
	margin-right:0;
	margin-bottom: 20px;
	display: inline-block;
	font-size: 0;
}

#content .photoborder .gallery a.visible {
	max-width: none;
}

/*******************************************************************
	PORTFOLIO
*******************************************************************/

#map-container {
	height: 500px;
	margin: 50px auto;
	position: relative;
	z-index: auto;
}

#map-container #map {
	border: 5px solid #FFF;
	box-shadow: 2px 2px 2px rgba(0,0,0,0.3);
	width: 100%;
	height: 100%;
	color: #000;
}

#map-container #map .gm-style .gm-style-iw {
	text-align: center;
}

.locations {
	background: rgba(255,255,255,0.5);
	padding: 0;
	margin: 0;
	list-style: none;
}

.locations h2 {
	background: #0455A0;
	color: #FFF;
	margin: 0 0 20px 0;
	padding: 15px;
	text-align: center;
}

.locations h3 {
	font-size: 18px;
	margin: 0;
	padding: 10px 20px;
	text-align: center;
}

.locations .state h4 {
	background: #FFF;
	color: #0455A0;
	font-size: 18px;
	margin: 0;
	padding: 10px 20px;
}

.locations .state {
	margin: 0 0 20px 0;
}

#content .locations ul.child-brand {
	background: rgba(255,255,255,0.5);
	margin: 0;
	padding: 0;
}

#content .locations li.location {
	list-style: none;
	margin: 0;
	overflow: hidden;
}

.locations .location .locImage {
	/* display: inline-block; */
	float: right;
	padding: 20px;
}

.locations .location .locInfo {
	display: block;
	padding: 20px;
}

.locations .location .locImage img {
	border: 1px solid #FFF;
	box-shadow: 2px 2px 2px rgba(0,0,0,0.3);
	display: block;
	width: 100%;
}

.locations .location .locInfo h5 {
	font-size: 16px;
	margin: 0;
}

.locations .location .locInfo p {
	margin: 0;
}

.locations .location .locInfo a:link,
.locations .location .locInfo a:visited {
	box-shadow: 2px 2px 2px rgba(0,0,0,0.3);
	display: inline-block;
	margin-top: 10px;
	margin-right: 10px;
	padding: 10px 40px; 
	background: #FFF;
	font-size: 13px;
	font-weight: bold;
	color: #1A2937;
	text-transform: uppercase;
	text-decoration: none;
}

.locations .location .locInfo a:hover {
	background: #1A2937;
	color: #FFF;
}

@media handheld, only screen and (max-width: 600px) {
	.locations .location .locImage {
		display: block;
		float: none;
		max-width: 240px;
		padding-bottom: 0;
	}
}

/*******************************************************************
  TABLES
*******************************************************************/

table {
	background: white;
	margin-bottom: 1.25em;
	border: solid 1px #dddddd; 
}
table thead,
table tfoot {
	background: whitesmoke;
	font-weight: bold; 
}
table thead tr th,
table thead tr td,
table tfoot tr th,
table tfoot tr td {
	padding: 0.5em 0.625em 0.625em;
	font-size: 0.875em;
	color: #222222;
	text-align: left; 
}
table tr th,
table tr td {
	padding: 0.5625em 0.625em;
	font-size: 0.875em;
	color: #222222; 
}
table tr.even, table tr.alt, table tr:nth-of-type(even) {
	background: #f9f9f9; 
}
table thead tr th,
table tfoot tr th,
table tbody tr td,
table tr td,
table tfoot tr td {
	display: table-cell;
	line-height: 1.125em;
}

/*******************************************************************
	SPECIALS
*******************************************************************/

#specials .special {
	overflow: hidden;
	clear: both;
	padding-bottom: 5px;
	border-bottom: 1px solid rgba(0,0,0,0.1);
	margin: 20px 0;
}

#specials .special:first-child {
	margin-top: 50px;
}
#specials .special:last-child {
	border-bottom: none;
}

#specials h2 {
	margin-top: 0;
}

#specials .photoborder {
	max-width: 40%;
}

#content .page-content {
	background: #333;
	background: rgba(255,255,255,0.70);
	padding: 155px 80px 50px 80px;
}

footer {
	box-shadow: none;
}

#container {
	position: absolute;
	width: 100%;
	height: 100%;
}

#content .content {
	float: right;
}

/*******************************************************************
  CONTACT FORM
*******************************************************************/
.form {
	margin: 0 0 20px 0;
}

.form h2 {
	margin: 0 0 20px 0;
}

.form span {
	display: block;
	font-size: 16px;
}

.form #captcha {
	display: block;
	margin: 0 0 10px 0;
}

.form #reload {
	font-size: 12px;
}

/* Contact form inputs and text areas*/
.form input[type='text'], .form textarea {
	max-width: 50%;
	border: 1px solid #cccccc;
	padding: 0.25em 0.5em;
	background-color: white;
	font-family: inherit;
	color: rgba(0, 0, 0, 0.75);
	-webkit-transition: -webkit-box-shadow 0.45s, border-color 0.45s ease-in-out;
	-moz-transition: -moz-box-shadow 0.45s, border-color 0.45s ease-in-out;
	transition: box-shadow 0.45s, border-color 0.45s ease-in-out; 
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}

/* Resizes the text area*/
.form textarea {
	width: 90%;
	max-width: 95%;
	height: 150px;
}

/* Removes the Chrome outline on focus, and produces an animation*/
.form input[type='text']:focus, .form textarea:focus {
	-webkit-box-shadow: 0 0 5px #999999;
    -moz-box-shadow: 0 0 5px #999999;
    box-shadow: 0 0 5px #999999;
    border-color: #999999; 
    border-color: #999999;
    outline: none;
}

.form fieldset ul {
	margin: 0;
	padding: 0;
}

.form fieldset label {
	display: inline;
	list-style: none;
	margin: 0 20px 0 0;
	padding: 0;
}

.form fieldset label input[type="radio"],
.form fieldset label input[type="checkbox"] {
	margin: 0 5px 0 0;
}

/* Submit button for the form*/
.form .submit {
	display: inline-block;
	width: 180px;
	margin-top: 1px;
	border: none;
	padding: 10px 25px 10px 25px;
	background-color: #1A2937;
	font: bold 18px/14px 'Lato', Arial, sans-serif;
	text-decoration: none;
	text-align: center;
	text-transform: uppercase;
	color: #fff;
	vertical-align: middle;
}

/* Submit hover state*/
.form .submit:hover {
	color: #1A2937;
	background-color: #FFF;
	box-shadow: 2px 2px 2px rgba(0,0,0,0.3);
}

/* Contact form error messages*/
.form strong.required, .form div.error {color: #ff0000}

/* Displays a GIF loading animation once the form is submitted*/
.form .throbber {
	display: none;
	padding-left: 10px;
}

/* Surrounds the inputs witha  red border if an error is found on submit*/
.form input.error,.form textarea.error {border: 1px solid #ff0000}

/* Hides error messages above individual inputs*/
.form p.error {display: none !important} 

/* The contact form success container. Displays a thank-you messgae*/
.form_success {
	display: none;
}


.form .fields {
    -webkit-column-gap: 40px; /* Chrome, Safari, Opera */
    -moz-column-gap: 40px; /* Firefox */
    column-gap: 40px;
    margin: 20px 0;
}


.form label {
	font-weight: bold;
}

.form .fields.two {
	-moz-column-count: 2;
	-webkit-column-count: 2;
	column-count: 2;
}

.form .fields.three {
	-moz-column-count: 3;
	-webkit-column-count: 3;
	column-count: 3;
}



.form .fields  input[type='text'],
.form .fields  textarea {
	width: 100%;
	max-width: none;
}

.career h3 {
	text-transform: uppercase;
	font-size: 30px;
	text-align: center;
}

.career hr {
	background: rgba(0,0,0,0.25);
}

/*******************************************************************
  LEADERSHIP
*******************************************************************/
.innerBoxStaff {
	overflow: hidden;
}

.innerBoxStaff {
	border-bottom: 1px solid #8C9192;
	padding-bottom: 30px;
}

.innerBoxStaff img {
	float: right;
	margin: 30px 0 30px 30px;
}

/*******************************************************************
  MEDIA QUERIES
*******************************************************************/
@media handheld, only screen and (max-width: 1530px) {
	#content .portfolio form > div:last-of-type {
		float: left;
	}
}

@media handheld, only screen and (max-width: 800px) {
	#content {
		margin-top: 160px;
		text-align: left;
	}

	header {
		box-shadow: none;
	}

	#content .page-content {
		position: relative;
		padding: 25px 25px 25px 25px;
		margin-bottom: 18px;
	}

	.side {
		display: none;
	}

	.gallery a.visible {
		max-width: 49%;
	}
}

@media handheld, only screen and (max-width: 600px) {
	.form a.reload {
		display: block;
	}

	.form .submit {
		margin: 0 auto;
	}

	#content .content ul#video-grid {
		margin-left: 0;
	}

	#video-grid li.video {
		width: 100%;
	}

	#content ul.locations .location .locImage {
		float: none;
		width: 100%;
		text-align: left;
		margin-bottom: 10px;
	}
	
	#content ul.locations .location .locImage img {
		max-width: 270px;
	}

	#content ul.locations .location .locInfo {
		float: none;
		width: 100%;
		margin-right: 0;
	}
}