/* Large desktop */
@media (min-width: 1220px) {
	/* HIDE MOBILE SECTIONS */
	.mobile {
		display: none !important;
	}
}
/* Standard desktop */
@media (min-width: 800px) and (max-width: 1219px) {
	/* HIDE MOBILE SECTIONS */
	.mobile {
		display: none !important;
	}
	.carousel,
	.peopleFeature,
	.aboutFeature,
	.serviceFeature {
		height: 500px;
	}

}
/* Tablet displays */
@media (min-width: 640px) and (max-width: 799px) {
	/* HIDE DESKTOP SECTIONS */
	.desktop {
		display: none !important;
	}
	/* SHOW MOBILE SECTIONS */
	.mobile {
		display: block;
	}

	/* Fix button display styles */
	.button.mobile {
		display: inline-block;
	}

	#navigationContainer {
		height: 50px;
	}
	#navigationContainer {
		min-height: 150px;
	}
	#navigationMenu h1 a img {
		height: 97px;
	}

	#legals p,
	#legals p span {
		text-align: center;
	}

	/* Reset margins and padding */
	.content.serviceDetails .contentLeft.seven,
	.content.peopleDetails .contentLeft.seven {
		float: none;
		width: 100%;
		margin-left: 0;
		margin-right: 0;
		margin-top: 0;
		margin-top: 36px;
		padding-top: 0;
		padding-bottom: 0;
		padding-right: 0;
		border: none;
	}
	/* Only turn off news left border */
	body.news #news .contentRight,
	body.news .newsDetails .contentRight {
		border-left: none;
		width: 100%;
	}
	.content.serviceDetails .contentLeft.two,
	.content.serviceDetails .contentRight.two,
	.content.peopleDetails .contentLeft.two,
	.content.peopleDetails .contentRight.two {
		width: 48%;
		border-top: 1px solid #DCDDDE;
	}
	.content.serviceDetails .contentLeft.two,
	.content.peopleDetails .contentLeft.two {
		margin-right: 0;
	}
	.content.serviceDetails .contentRight.two,
	.content.peopleDetails .contentRight.two {
		width: 48%;
		padding-left: 3%;
	}

	/* Content style overrides */
	body.contact .content,
	body.news .content,
	body.people .content,
	body.services .content,
	body.about .content {
		border-top: 1px solid #DCDDDE;
	}
	hr.break {
		display: none;
	}
	hr.newsBreak {
		display: block;
	}
	#footerContainer {
		padding-top: 48px;
		min-height: 40px;
	}
	.carousel {
		height: 500px;
	}
	.carouselContainer .controls {
		/*top: 260px;*/
	}
	.serviceList {
		margin-top: 36px;
	}
	#services .serviceList .serviceTile,
	#services .serviceList .serviceTile.active {
		width: 50%;
	}
	.peopleFeature {
		height: 350px;
	}
	.aboutFeature,
	.serviceFeature {
		height: 450px;
	}
	.content.serviceDetails .servicePeople,
	.content.peopleDetails .servicePeople {
		width: 35%;
		margin-right: 15%;
	}
	.content.serviceDetails .servicePeople p,
	.content.peopleDetails .servicePeople p {
		text-align: center;
	}
	#contact .contentLeft,
	#contact .contentRight {
		height: 300px;
	}
	#contact .contentLeft.four,
	#contact .contentLeft.three,
	#contact .contentRight.four {
	width: 31.2%;
	}

	#news .newsDetails,
	.newsDetails .newsDetails {
		padding-left: 0;
	}
}
/* Mobile displays*/
@media (max-width: 639px) {
	/* HIDE DESKTOP SECTIONS */
	.desktop {
		display: none !important;
	}
	/* SHOW MOBILE SECTIONS */
	.mobile {
		display: block;
	}
	/* Fix button display styles */
	.button.mobile {
		display: inline-block;
	}

	#navigationContainer {
		height: 50px;
	}
	#navigationContainer {
		min-height: 120px;
	}
	#navigationMenu h1 {
		height: 70px;
	}
	#navigationMenu h1 a {
		text-align: center;
	}
	#navigationMenu h1 a img {
		height: 70px;
	}

	/* Reset margins and padding */
	.contentLeft,
	.contentRight,
	.content.serviceDetails .contentLeft,
	.content.serviceDetails .contentLeft.seven,
	.content.peopleDetails .contentLeft,
	.content.peopleDetails .contentLeft.seven,
	#contact .contentLeft.three,
	#contact .contentLeft.four,
	#contact .contentRight.four,
	.content.serviceDetails .contentRight,
	.content.peopleDetails .contentRight {
		float: none;
		width: 100%;
		margin-left: 0;
		margin-right: 0;
		margin-top: 0;
		margin-top: 36px;
		padding-top: 0;
		padding-bottom: 0;
		padding-right: 0;
		border: none;
	}
	.content.serviceDetails h3,
	.content.peopleDetails h3 {
		padding-top: 0;
		margin-top: 60px;
	}
	.content.serviceDetails ul,
	.content.peopleDetails ul {
    margin-bottom: 26px;
	}
	/* Override for the servie people tiles  */
	.content.serviceDetails .servicePeople + h3 {
		padding-top: 36px;
	}

	.contentLeft,
	.contentRight {
		margin-top: 36px;
		padding-left: 0 !important;
		width: 100% !important;
	}
	.contentFull {
		margin-left: 0;
		margin-right: 0;
	}

	/* Service and people content left right border top overrides */
	.content.serviceDetails .contentLeft h3,
	.content.serviceDetails .contentRight h3,
	.content.peopleDetails .contentLeft h3,
	.content.peopleDetails .contentRight h3,
	#contact .contentLeft h3,
	#contact .contentRight h3 {
		margin-top: 0;
		padding: 0;
		padding-top: 36px;
		width: 100% !important;
		border-top: 1px solid #DCDDDE;
	}
	#contact .contentLeft.four h3 {
		padding-top: 0;
		border: none;
	}

	.content.serviceDetails .contentRight {
		clear: left;
	}


	/* Content style overrides */
	body.contact .content,
	body.news .content,
	body.people .content,
	body.services .content {
		border-top: 1px solid #DCDDDE;
	}
	hr.break {
		display: none;
	}
	hr.newsBreak {
		display: block;
	}
	#footerContainer {
		padding-top: 48px;
		min-height: 120px;
	}
	body.services .content,
	body.people .content,
	body.contact .content,
	body.about .content {
		padding-bottom: 36px;
	}
	#footer p {
		width: 100%;
		font-size: 11px;
		margin: 0;
		text-align: center;
	}
	#footerContainer .footerMobile h4 {
		text-align: center;
	}
	#legals p,
	#legals p span {
		text-align: center;
	}
	.carousel {
		height: 350px;
	}
	.carouselContainer .controls {
		top: 260px;
	}
	.contactOverlay h2,
	.carouselContainer .controls h1 {
		font-size: 40px;
		line-height: 40px;
	}
	.carouselContainer .controls h1,
	.carouselContainer .controls h5 {
		margin-bottom: 20px;
	}

	/* Heading font overrides */
	#news .newsDetails h2,
	.newsDetails .newsDetails h2,
	.serviceFeature h1,
	.peopleFeature h1 {
		font-size: 40px;
		line-height: 42px;
	}

	/* Service and people tiles */
	.serviceList, .peopleList {
		margin-top: 36px;
	}
	.serviceList .serviceTile,
	.peopleList .peopleTile {
		width: 100% !important;
		float: none;
	}
	.peopleFeature {
		height: 250px;
	}
	.aboutFeature,
	.serviceFeature {
		height: 300px;
	}
	.aboutFeature {
		background-size: cover;
	}
	.serviceFeature h1,
	.peopleFeature h1 {
		margin-bottom: 12px;
	}
	.serviceFeature h5 {
		padding: 0 3%;
	}
	.peopleFeatureTitle h1 {
		padding-left: 0;
	}
	.peopleFeatureTitle h5 {
		padding-left: 0;
    max-width: 200px;
	}
	.content.serviceDetails .servicePeople p,
	.content.peopleDetails .servicePeople p {
		text-align: center;
	}

	/* News overrides */
	#news .content {
		margin: 0;
		padding: 0;
		width: 100%;
	}
	#news .contentRight {
		padding-top: 0;
	}
	#news .contentRight,
	.newsDetails .contentRight {
		border-left: none;
	}
	#news .newsDetails,
	.module.newsDetails .newsDetails{
		padding: 0 7%;
	}
	.module.newsDetails .content {
		margin: 0;
		padding: 0;
		width: 100%;
	}
	.module.newsDetails .contentRight {
		padding-top: 0;
	}

	/* Contact overrides */
	#mapContainerContact {
		display: none;
	}
}

/*
*
*
*	Mobile device styles independant of screen sizes
*
*
*/

/* Mobile navigation */
#navigationMenu {
	position: relative;
}
/* Menu bar styles and elements */
#navigationMenu #menuBar {
	position: relative;
	height: 50px;
	border-bottom: 1px solid #DCDDDE;
	background-color: #FFF;
	z-index: 200;
}
#navigationMenu #menuBar .socialButton {
	float: left;
	height: 50px;
	border-right: 1px solid #DCDDDE;
}
#navigationMenu #menuBar a.social {
	display: inline-block;
	width: 50px;
	height: 50px;
	overflow: hidden;
	background-repeat: no-repeat !important;
}
#navigationMenu #menuBar a.social.facebook {
	background: url('../images/social-icons-mobile.png');
	background-position: 0 0;
}
#navigationMenu #menuBar a.social.facebook:hover {
	background-position: 0 -50px;
}
#navigationMenu #menuBar a.social.twitter {
	background: url('../images/social-icons-mobile.png');
	background-position: -50px 0px;
}
#navigationMenu #menuBar a.social.twitter:hover {
	background-position: -50px -50px;
}
#navigationMenu #menuBar a.social.instagram {
	background: url('../images/social-icons-mobile.png');
	background-position: -100px 0px;
}
#navigationMenu #menuBar a.social.instagram:hover {
	background-position: -100px -50px;
}
#navigationMenu #menuBar a.social.youtube {
	background: url('../images/social-icons-mobile.png');
	background-position: -150px 0px;
}
#navigationMenu #menuBar a.social.youtube:hover {
	background-position: -150px -50px;
}

#navigationMenu #menuBar .navigationButton,
#navigationMenu #menuBar .navigationCloseButton {
  position: relative;
  float: right;
  height: 50px;
  width: 50px;
  text-align: center;
  -webkit-transition: all 1s ease-out;
  -moz-transition: all 1s ease-out;
  transition: all 1s ease-out;
}

#navigationMenu #menuBar .navigationButton a,
#navigationMenu #menuBar .navigationCloseButton a {
  display: inline-block;
  margin-top: 15px;
  width: 20px;
  height: 15px;
  font-size: 20px;
}

#navigationMenu #menuBar .navigationButton {
  display: inline-block;
}

#navigationMenu #menuBar.active .navigationButton {
  display: none;
}

#navigationMenu #menuBar .navigationCloseButton {
  display: none;
}

#navigationMenu #menuBar.active .navigationCloseButton {
  display: inline-block;
}

#navigationMenu .navigationList {
	position: absolute;
	top: 50px;
	margin: 0;
	padding: 0;
	height: 0;
	width: 100%;
	list-style: none;
	overflow: hidden;
	background: #FFF;
	box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.2);
	z-index: 100;
	-webkit-transition: all 0.6s ease-out;
	-moz-transition: all 0.6s ease-out;
	transition: all 0.6s ease-out;
}
#navigationMenu .navigationList.active {
	height: auto;
	background-color: #F5F5F5;
}
#navigationMenu .navigationList ul {
	padding: 0;
}
#navigationMenu .navigationList li {
	text-align: center;
	border-bottom: 1px solid #DCDDDE;
}
#navigationMenu .navigationList li.active {
	background-color: #808285;
}
#navigationMenu .navigationList li.active h3 a {
	color: #FFF;
}
#navigationMenu .navigationList li.last {
	border-bottom: none;
}
#navigationMenu .navigationList li h3 {
	margin: 0;
	padding-top: 20px;
	padding-bottom: 20px;
	text-align: center;
}
#navigationMenu .navigationList li a {
	font-size: 22px;
	font-weight: 400;
	text-decoration: none;
	text-transform: uppercase;
}
#navigationMenu .navigationList li .subNavigation {
	height: 0;
	overflow: hidden;
	background-color: #DCDDDE;
	-webkit-transition: all 0.4s ease-out;
	-moz-transition: all 0.4s ease-out;
	transition: all 0.4s ease-out;
}
#navigationMenu .navigationList li .subNavigation.active {
	height: auto;
}
#navigationMenu .navigationList li .subNavigation li {
	background-color: #DCDDDE;
	border-top: 1px solid #FFF;
}
#navigationMenu .navigationList li .subNavigation li a {
	color: #808285;
}
#navigationMenu .navigationList li:first-child {
	border-top: none;
}
#navigationMenu .navigationList li .subNavigation li.last {
	border: none;
}
#navigationMenu .navigationList li .subNavigation li h3 {
	margin: 0;
}

/* Mobile logo styles */
#navigationMenu h1 {
	position: relative;
	top: 0;
	text-align: center;
	z-index: 80;
	width: 70%;
	margin-left: auto;
	margin-right: auto;
}

/*
*
*
*	Mobile device styles independant of screen sizes
*
*
*/
body.apple #navigationMenu #menuBar .navigationButton:hover a,
body.apple #navigationMenu #menuBar .navigationCloseButton:hover a {
	background-position: top left;
}
/* Turn off the hovers on the mobile social buttons apple only */
body.apple #navigationMenu #menuBar a.social.facebook:hover {
	background-position: 0 0px;
}
body.apple #navigationMenu #menuBar a.social.twitter:hover {
	background-position: -50px 0px;
}
body.apple #navigationMenu #menuBar a.social.instagram:hover {
	background-position: -100px 0px;
}
body.apple #navigationMenu #menuBar a.social.youtube:hover {
	background-position: -150px 0px;
}
/* Share links */
body.apple #news a.buttonLink.email:hover span,
body.apple .newsDetails a.buttonLink.email:hover span {
	background-position: 0 0px;
}
body.apple #news a.buttonLink.link:hover span,
body.apple .newsDetails a.buttonLink.link:hover span {
	background-position: -20px 0px;
}
body.apple #news a.buttonLink.video:hover span,
body.apple .newsDetails a.buttonLink.video:hover span {
	background-position: -40px 0px;
}
body.apple #news a.buttonLink.news:hover span,
body.apple .newsDetails a.buttonLink.news:hover span {
	background-position: -60px 0px;
}
/* Follow links */
body.apple .followLinks .follow.facebook:hover {
	background-position: 0 0;
}
body.apple .followLinks .follow.twitter:hover {
	background-position: -20px 0;
}
body.apple .followLinks .follow.linkedin:hover {
	background-position: -40px 0;
}
