/* start responsive coding with different widths */
.cf:before,.cf:after {
	content:"";
	display:table;
}
.cf:after {
	clear:both;
}
.cf {
	zoom:1;
}
.clear {
	clear: both;
}
#mainnav {
	position: relative;
	/*width: 100%;*/
}
	#mainnav h3 {
	  position: absolute;
	  left: -2000em;
	}
	#mainnav ul {
	  margin:0;
	  padding:0;
	  list-style:none;
	  overflow:hidden;
	}
		#mainnav ul li {
		  display: inline;
		}
		#mainnav ul li a:link, #mainnav ul li a:visited {
		  color: #000; overflow:hidden;
		}
		#mainnav ul li a:hover, #mainnav ul li a:active {
		}
.content-top {
	height: 18px;
}
.photogallery {
	width: 100%;
}
.gallerythumb {
	width: 203px;
	display: inline-block;
}

@media (min-width: 990px) {
	.hideDesk {
		display: none;
	}
	#mainnav {
		float: right;
		padding-right: 60px;
		margin: -45px 0 30px;
	}
	/*.mapaddress a, .footer .mapaddress a:hover {
		text-decoration: none;
		cursor: default;
		color: #b1b6a9;
	}*/
}

@media (min-width: 481px) and (max-width: 990px) {
	.hideTab {
		display: none;
	}
	.container, .container2, .container3, .container4, .container5, .container6, .container7 {
		width: 100%;
		max-width: 100%;
		overflow: hidden;
	}
	.header {
		width: 100%;
		max-width: 100%;		
	}
	.logo {
		display: block;
		margin: 0 auto;
		float: none;
		height: 140px;
	}
	.slogan {
		font-size: 1.6em;
		float: none;
		margin: 0 auto;
		display: block;
		text-align: center;
		max-width: 100%;
	}
	.slogan br {
		display: none;
	}
	.slogan span {
		display: none;
	}
	.sociallinks {
		float: none;
		width: 32px;
		display: inline;
	}
	.navigation {
		width: 100%;
		display: block;
		clear: both;
		text-align: center;
		margin: 20px auto;
		line-height: 26px;
	}
	.navigation li {
		display: inline-block;
	}
	.content-top, .content-container, .content-bottom {
		width: 100%;
		max-width: 100%;
	}
	.cotent-top {
		height: 18px;
	}
	.bg-container {
		width: 97%;
		max-width: 97%;
		overflow: hidden;
		float: none;
		left: 0;
		top: 0;
		margin: 0 auto;
	}
	.content-top img, .content-bottom img {
		width: 100%;
	}
	.content-container {
		background-size: contain;
	}
	.content {
		width: 89%;
		max-width: 89%;
	}
	.header-photo, .who-photo, .contact-photo, .gallery-photo, .jobs-photo, .knowledge-photo, .product-photo, .what-photo {
		width: 92%;
		height: auto;
	}
	.left-column.hideDesk {
		float: none;
		margin: 0 auto;
		display: block;
		height: 350px;
	}
	.bg-container {
	}
	.callnow {
		display: none;
	}
	.footer {
	}
	/*.mapaddress a, .footer .mapaddress a:hover {
		text-decoration: none;
		cursor: default;
		color: #b1b6a9;
	}*/
}

@media screen and (max-width: 480px) {
	.hideMob {
		display: none !important;
	}
	.container, .container2, .container3, .container4, .container5, .container6, .container7 {
		width: 100%;
		overflow: hidden;
		background-position: right bottom;
	}
	.header {
		height: auto;
	}
	.logo {
		float: none;
		width: auto;
		height: auto;
	}
	.logo img {
		width: 60%;
		height: 60%;
		margin: 0 auto;
		display: block;
	}
	.slogan {
		display: none;
	}
	.navigation {
		width:80%;
		height: auto;
		border:2px solid #820022;
		margin:0 auto 10px auto;
		float:none;
		display: block;
		clear: both;
	}
	.navigation h3 {
		position:relative;
		left:auto;
		color:#fff;
		margin:0;
		padding:5px;
		text-align:center;
	}
	.no-js .navigation h3 {
		display:none;
	}
	.navigation ul {
		display:none;
		font-size:1.3em; 
		background-color: #820022;
	}
	.no-js .navigation ul {
		display:block;
	}
	.navigation li {
		float:none;
		clear:both;
		border-top:1px solid #fff;
		border-right: none;
		padding-right: 0;
		text-align: center;
	}
	.navigation ul li a:link, .navigation ul li a:visited  {
		width:100%;
		color:#fff;
		display: block;
		padding: 10px 0;
	}
	.navigation ul li a:hover, .navigation ul li a:active {
		background:#a82245;
		text-decoration: none;
	}
	#mainnav {
		width:80%;
		height: auto;
		border:2px solid #000;
		margin:10px auto;
		float:none;
		display: block;
		clear: both;
		background: #1c6e3a;
	}
	#mainnav h3 {
		position:relative;
		left:auto;
		color:#fff;
		margin:0;
		padding:5px;
		text-align:center;
		text-transform:uppercase;
		cursor:pointer;
	}
	.no-js #mainnav h3 {
		display:none;
	}
	#mainnav ul {
		display:none;
		font-size:1.3em; 
		background-color: #297b47;
	}
	.no-js #mainnav ul {
		display:block;
	}
	#mainnav ul li {
		float:none;
		clear:both;
		border-top:1px solid #fff;
		text-align: center;
	}
	#mainnav ul li a:link, #mainnav ul li a:visited  {
		width:100%;
		color:#fff;
		display: block;
		padding: 10px 0;
	}
	#mainnav ul li a:hover, #mainnav ul li a:active {
		background:#e13b21;
	}
	.callnow {
		clear: both;
		position: relative;
		width: 80px;
		height: 36px;
		display: block;
		margin: auto;
	}
	.callnow a {
		inline-display: block;
		padding: 10px;
		background-color: #d9290d;
		color: #fff;
		text-decoration: none;
	}
	.header-photo, .who-photo, .contact-photo, .gallery-photo, .jobs-photo, .knowledge-photo, .product-photo, .what-photo {
		width: 92%;
		display: block;
		height: 250px;
		background-size: cover;
	}
	.bg-container {
		width: 97%;
		max-width: 97%;
		overflow: hidden;
		float: none;
		left: 0;
		top: 0;
		margin: 0 auto;
		background-size: cover;
	}
	.subtext {
		height: 163px;
	}
	.content-top, .content-container, .content-bottom {
		width: 100%;
		max-width: 100%;
	}
	.content-top img, .content-bottom img {
		width: 100%;
	}
	.content-container {
		background-size: contain;
	}
	.content {
		width: 86%;
		max-width: 86%;
	}
	.left-column.mobileservice {
		margin: 0 auto;
		float: none;
	}
	.gallerythumb {
		display: block;
		margin: 0 auto;
	}
	.logos {
		float: none;
		display: block;
		height: auto;
	}
	table {
		max-width: 100%;
		width: 100%;
		display: block;
		overflow: hidden;
		margin-bottom: 15px;
	}
	table tbody, .content table tr, .content table td {
		max-width: 100%;
		width: 100%;
		display: block;
	}
	img {
		max-width: 100%;
		height: auto;
		float: none;
		display: block;
	}
}