/* STANDARD STYLES TO FIX BROWSER FORMATING */
html {
	height: 100%;
}
body {
	background-color: #FFF;
	padding: 0;
	margin: 0;
	position:relative; /* needed for footer positioning*/
	height:auto !important; /* real browsers */
	height:100%; /* IE6: treaded as min-height*/
	min-height:100%; /* real browsers */
}
table {
	border: 0;
	border-collapse: collapse;
}
table th, table td {
	text-align: left;
}
img {
	border: 0;
}
form {
	display: inline;
}
select {
	margin: 0;
}
label {
	padding-right: 4px;
}
ul {
	padding: 0 1em;
	list-style-type: disc;
}
iframe {
	position: relative; /* need this to push videos ontop of the popup mask */
	width: 100%;
	height: 100%;
}

/*
*
*	CUSTOM FONTS
*
*/

h1, h2, h3, h4, h5, p, a, li, dt, dd, th, td, input, select, option, optgroup, textarea, span, label, legend, div {
	font-family: sans-serif;
	margin: 0;
	color: #B1B3B6;
	font-size: 16px;
	line-height: 20px;	
	font-style: normal;
	font-weight: 200;
}
/* Heading font styles */

h1 {
	line-height: 50px;
}

h2 {
	font-size: 55px;
	line-height: 50px;
}

label { /* Field input */
	color: #B1B3B6;
	font-size: 11px;
	line-height: 15px;
	text-align: left;
	font-weight: 300;
	text-transform: uppercase;
}
label.error {
	color: #F58220;
}
input { /* Field */
	color: #808285;
	font-size: 16px;
	line-height: 20px;
	text-align: left;
}
select,
textarea { /* Drop down  */
	color: #808285;
}
input.error,
textarea.error,
select.error {
	border-left: 3px solid #F58220 !important;
}
/* form element sizing */
input.tiny {
	width: 40px;
}
input.small {
	width: 60px;
}
input.medium {
	width: 120px;
}
input.large {
	width: 240px;
}
input.huge {
	width: 320px;
}
input.date {
	width: 100px;
}

/* BUTTONS */
/* NOTE: clear is the default... */
.button,
input.button {
	display: inline-block;
	margin-top: 15px;
	margin-bottom: 25px;
	height: 50px;
	line-height: 50px !important;
	padding-left: 20px;
	padding-right: 20px;
	font-style: normal;
	font-weight: 300;
	font-size: 16px;
	color: #808285;
	text-decoration: none;
	border-radius: 6px;
	z-index: 10;
	-webkit-transition: all .2s;
	-moz-transition: all .2s;
	-webkit-appearance: none; /* Turn off iPhone and iPad submit styles */
}
.button:hover {
	text-decoration: none;
}

/* white */
.button.white {
	color: #FFF;
	border: solid 1px #EBEBEC;
	background: none;
}
.button.white:hover {
	border: solid 1px #14CFBF;
	background-color: #14CFBF;
}
/* dark */
.button.dark {
	color: #B1B3B6;
	border: solid 1px #DCDDDE;
	background: none;
}
.button.dark:hover {
	color: #FFF;
	border: solid 1px #14CFBF;
	background-color: #14CFBF;
}


/*
*
*	DEVICE WIDTHS
*
*/

/* FULL WIDTH CONTAINERS */

/* SITE WIDE MARGINS */
#navigation, .content, #footer, #legal, .carouselContainer {
	padding: 0;
	margin: 0;
	margin-left: auto;
	margin-right: auto;
}

/* Large desktop */
@media (min-width: 1220px) {
	#navigation, .content, #footer, #legal, .carouselContainer {
		padding: 0 36px;
		width: 1128px;
	}
}
/* Standard desktop */
@media (min-width: 800px) and (max-width: 1219px) {
	#navigation, .content, #footer, #legal, .carouselContainer {
		padding: 0 3%;
		width: 94%;
	}
}
/* Tablet displays */
@media (min-width: 640px) and (max-width: 799px) {
	#navigation, .content, #footer, #legal, .carouselContainer {
		padding: 0 3%;
		width: 94%;
	}
}
/* Mobile displays*/
@media (max-width: 639px) {
	#navigation, .content, #footer, #legal, .carouselContainer {
		padding: 0 7%;
		width: 86%;
	}
}

/* Full width containers */
.carousel, #mapContainer {
	width: 100%;
}

/*
*
*	11 COLUMN GRID
*
*/

/* DEFAULT COLUMN STRUCTURE */
.contentLeft,
.contentRight {
	float: left;
}

/* Narrow content areas */
.contentLeft {
	margin-left: 9.26%;
	margin-right: 1.86%; /* Default grid spacer size */
	/* margin-right: 5%;  TODO Default grid spacer size */
}
.contentRight {
	margin-right: 9.26%;
}

/* Full and half size layouts */
.fiftyFifty {
	width: 39.81%;
}

.contentFull {
	margin-left: 9.26%;
	margin-right: 9.26%;
}

/* COLUMN GRID */
.one {
	width: 7.4%;
}
.two {
	width: 16.66%;
}
.three {
	width: 25.92%;
}
.four {
	width: 35.18%;
}
.five {
	width: 44.44%;
}
.six {
	width: 53.7%;	
}
.seven {
	width: 62.96%;
}
.eight {
	width: 72.22%;
}
.nine {
	width: 81.48%;
}
.ten {
	width: 90.74%;
}
.eleven,
.fullwidth {
	width: 100%;
}
.fullwidth {
	width: 81.48%;
	padding-left: 9.26%;
	padding-right: 9.26%;
}

/*
*
*	STANDARD SITE STYLES
*
*/

/* NAVIGATION STYLES */
#navigationContainer {
	height: 80px;
}
#navigation ul {
	padding: 0;
	margin: 0;
	height: 80px;
}
#navigation ul li {
	list-style: none;
	float: left;
	padding: 0;
	margin: 0;
	height: 80px;
}
#navigation ul li.first {
	margin-left: 18.52%;
	width: 9.26%;
	text-align: left;
}
#navigation ul li.first + li {
	width: 9.26%;
	text-align: left;
}
#navigation ul li.first + li + li {
	width: 25.92%;
	text-align: center;
}

#navigation ul li.first + li + li + li {
	width: 9.26%;
	text-align: right;
}
#navigation ul li.last {
	margin-right: 18.52%;
	width: 9.26%;
	text-align: right;
}

/* Nav font styles */
#navigation ul li h3 {
	line-height: 80px;
	text-transform: uppercase;
}
#navigation ul li h3 a {
	color: #B1B3B6;
	font-weight: 400;
	text-decoration: none;
}




/* DROP DOWN NAVIGATION */


/* CONTENT CONTAINER STYLES */
#contentContainer {
	height: auto;
}


/* Map container styles */
#mapContainerHome,
#mapContainerContact {
	height: 600px;
	margin-top: 12px;
}

/* FOOTER STYLES */

#footerContainer {
	clear: both;
	height: 80px;
	margin-top: 12px;
	background-color: #333132;
}
#footer p {
	float: left;
	margin-left: 9.26%;
	margin-right: 9.26%;
	color: #FFF;
	line-height: 80px;
	text-transform: uppercase;
}

#footer .socialLinks {
	float: right;
	height: 20px;
	line-height: 80px;
}
#footer .socialLinks a.social {
	display: inline-block;
	margin-left: 4px;
	width: 20px;
	height: 20px;
	background-repeat: no-repeat !important;
}

#footer .socialLinks a.social.facebook {
	background: url('../images/social-icons.png');
	background-position: 0 0;
}
#footer .socialLinks a.social.facebook:hover {
	background-position: 0 -20px;
}

#footer .socialLinks a.social.twitter {
	background: url('../images/social-icons.png');
	background-position: -20px 0px;
}
#footer .socialLinks a.social.twitter:hover {
	background-position: -20px -20px;
}


/* LEGALS */
#legalContainer {
	height: 200px;
	background-color: #231F20;
}
#legal p {
	margin-left: 9.26%;
	margin-right: 9.26%;
	font-size: 10px;
	color: #58595B;
	line-height: 80px;
}


/*
*	
*	SITE CONTENT STYLES
*
*/

/* Home */
.contactOverlay {
	position: relative;
	height: 0;
	top: -225px;
	text-align: center;
}
.contactOverlay h2 {
	margin-bottom: 22px;
	color: #FFF;
	text-transform: uppercase;
}
.contactOverlay p.hours {
	color: #FFF;
}



/* Default content header styles */
.content .serviceHeader,
.content .contactHeader {
	height: 300px;
}
.content .serviceHeader h2,
.content .contactHeader h2 {
	padding-top: 95px;
	text-align: center;
	text-transform: uppercase;
}
.content .serviceHeader h3,
.content .contactHeader h3 {
	margin-top: 22px;
	text-align: center;
}

.content .serviceHeader p,
.content .contactHeader p {
	margin-top: 22px;
	text-align: center;
}


/* Services */
.content .serviceImage {
	height: auto;
	margin-bottom: 60px;
}
.content .serviceImage img {
	width: 100%;
}
.content .serviceContent {
	margin-bottom: 100px;
}
.content .serviceContent p.blurb,
.content .serviceContent h4 {
	margin-top: 0;
	margin-bottom: 30px;
}
.content .serviceContent p {
	margin: 12px 0;
}
.content .serviceContent h4 {
	font-size: 14px;
	text-transform: uppercase;
}
.content .serviceContent .contentRight {
	padding-left: 5.26%;
	width: 20.66%;
}
.serviceSupportingImages {
	margin-top: 100px;
	height: auto;
	margin-bottom: 50px;
}
.serviceSupportingImages .supportingImage {
	float: left;
	width: 32.09%;
	margin-left: 1.86%;
}
.serviceSupportingImages .supportingImage.first {
	margin-left: 0;
}
.serviceSupportingImages .supportingImage .supportImage {
	width: 100%;
	height: 292px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	background-color: #F5F5F5;
}
.history .serviceSupportingImages .supportingImage .supportImage {
	background-size: cover;
}
.serviceSupportingImages .supportingImage h4 {
	margin-top: 12px;
	margin-bottom: 24px;
	font-size: 12px;
	text-align: center;
	text-transform: uppercase;
}

/* History overrides */
.history .content .serviceContent .contentRight {
/*	padding-left: 0;
	width: 39.81%;*/
}

/* Contact styles */
.content .contactHeader p.hours {
	line-height: 20px;
	margin: 0;
}
.content .contactHeader p {
	margin-bottom: 40px;
}

/*  info box styles */
.infoBox {
	padding-top: 10px;

}

h2.infoWindow,
p.infoWindow {
	width: 205px;
	margin: 0;
	text-align: center;
}
h2.infoWindow {
	margin-bottom: 40px;
}
p.infoWindow.address {
	margin-bottom: 5px;
}
p.infoWindow.telephone {
	font-size: 14px;
}
p.infoWindow.last {
	padding-bottom: 20px;
}
p.infoWindow.address.last {
	margin-bottom: 0;
}
p.infoWindow.email {
	padding-bottom: 55px;
}
p.infoWindow.email .button {
	font-size: 14px !important;
	font-weight: 300;
}



/*
*	
*	CUSTOM Structure elements
*
*/

/* These elements must always be off/hidden this is only content for the DOM */
#holding {
	display: none;
	height: 0;
}
.meta {
	display: none;
	height: 0;
}
/* Site breaks */
hr.break {
	border: none;
	border-top: 1px solid #DCDDDE;
	padding: 0 9.26%;
}


/* this is required to give the content containers a height */
hr.fake {
	margin: 0 !important;
	padding: 0;
	opacity: 0;
	border-color: transparent;
	clear: left;
}


/*
*	
*	CUSTOM Browser style overrides
*
*/

/* scroll bar styles */
::-webkit-scrollbar {
    width: 10px;
	z-index: 50;
}
/* track */
::-webkit-scrollbar-track {
	background-color: #FFF;
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
}
/* bar */
::-webkit-scrollbar-thumb {
    background: #808285;
	height: 70px;
	max-height: 70px;
}
::-webkit-scrollbar-thumb:hover {
	background: #231F20;
}