﻿
/*===================== 
	CSS reset/normalize 
=======================*/

/**Correct `block` display not defined in IE 8/9.**/
article,aside,details,figcaption,figure,footer,header,hgroup,
main,nav,section,summary {display: block;}
pre {white-space: pre-wrap;}
small { font-size: 80%;}

.service-list ul ul li{margin-left:20px;list-style-position:inside;}
.service-list ul li{margin-left:40px;list-style-position:inside;}

@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: local('Montserrat-Regular'), url(https://fonts.gstatic.com/s/montserrat/v7/zhcz-_WihjSQC0oHJ9TCYBsxEYwM7FgeyaSgU71cLG0.woff) format('woff');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  src: local('Montserrat-Bold'), url(https://fonts.gstatic.com/s/montserrat/v7/IQHow_FEYlDC4Gzy_m8fcgFhaRv2pGgT5Kf0An0s4MM.woff) format('woff');
}
/*===================== 
	base styles 
=======================*/

body {
	-webkit-text-size-adjust: none;
	padding:0;
    margin: 0;
	font-family: 'Montserrat', sans-serif !important;
	background:#fff;
	font-size:14px;
	line-height:1.6;
	overflow-x: hidden;
	}

svg:not(:root) {overflow: hidden;/*reset*/}
	
/* clear floats */ 
.group:before,
.group:after {content: ""; display: table;} 
.group:after {clear: both;}
.group {zoom: 1;}	
.clear { clear: both;}
	
/*image replacement*/
.hide-text {
	text-indent:  100%;
	white-space:  nowrap;
	overflow:  hidden;
	}	

hr {
    -moz-box-sizing: content-box;
    box-sizing: content-box;
	border-style: solid;
    height: 0;
	color:#f4f4f4;
	} 

img { border: 0;} 
.center{text-align:center}

.sitewidth{max-width:1250px; width:85%; margin:0 auto;}
.sitewidth p {line-height: 1.6;}
.column1 {width:100%;}
.column2 {width:47%; float:left; margin-right:6%; box-sizing: border-box;}
.column3 {width:33.33333%; *width: 30%; float:left; padding-right: 20px; box-sizing: border-box;}
.column4 {width:25%; float:left; padding-left: 20px; box-sizing: border-box;}
.column5 {width:20%; float:left; padding-right: 20px; box-sizing: border-box;}
.column6 {width:16.66666%; *width: 14%; float:left; padding-right: 20px; box-sizing: border-box; margin: 0 0 20px 0;}
.twothird{width:64%; float:left; padding-right: 30px; box-sizing: border-box;}
.onethird{width:36%; float:left; box-sizing: border-box; text-align:right}


/*===================== 
	typography 
=======================*/

	::-moz-selection {
		background: #d1d1d1;
		color: #fff;
		text-shadow: none;
	}
	
	::selection {
		background: #d1d1d1;
		color: #fff;
		text-shadow: none;
	}
	
strong, b { font-family: 'Montserrat'; font-weight:bold;}
	
h1 {font-size: 24px;color:#d30d0d;text-transform:uppercase; line-height: 1.2;}
h2 {font-size:22px;color:#d30d0d;margin-bottom:10px; line-height: 1.4;}
h3{font-size:20px;color:#d30d0d;margin-bottom:10px;line-height: 1.4;}
h4{font-size:18px;color:#1c1c1c;margin-bottom:5px; line-height: 1.6;}
h4 span{color:#1c1c1c; font-size: 14px; display: block; text-transform:capitalize;}

.red {color: #d30d0d!important;}
#quicklinks a{text-transform:capitalize; font-size:11px; margin-right:15px;}

.contact-top .header-title {
	line-height: 1.3;
    font-size: 20px;
    color: #d30d0d;
    text-transform: uppercase;
	font-weight: bold;
}

/*===================== 
	table
=======================*/
#specsheet{ width:100%; margin:2em auto;display: flex; flex-wrap: wrap;}
.spec_list{width: 33.33%;}
.spec {padding:.75em 1.5em!important;	border:1px solid #dbdbdb;}

/*===================== 
	link styles 
=======================*/

a:focus {outline: thin dotted;/*reset*/
	}
	
a,
a:link, 
a:visited, 
a:active {
	outline: 0;/*reset*/
    color:inherit; 
    text-decoration:none;
	}
	a:hover  {
		outline: 0;/*reset*/
		text-decoration: none;
		color: #de1a22;
		}
a.invbtn{
	display:block;
	text-align:center;
	text-decoration:none;
	font-size:20px;
	color:#de1a22;
	width:50%;
	padding:2% 1%;
	margin:4% 0 0 0;
	border: 1px solid #de1a22;
	border-radius:12px;
}
a.invbtn:hover{
	color:#000;
	border:1px solid #000;
}
a.whitebtn{
	display:inline-block; 
	zoom:1; 
	text-align:center;
	text-decoration:none;
	font-size:18px;
	color:#fff;
	width:40%;
	padding:1%;
	margin:2% 0 0 2%;
	border: 1px solid #fff;
	border-radius:12px;
}
a.whitebtn:hover{
	color:#999;
	border:1px solid #999;
}

/*	HERO POPUP */
.popup {width:92%; max-width: 800px; background: #f4f4f4; position:absolute; z-index:99999999; top:10%; left:50%; transform:translateX(-50%); box-sizing:border-box; display:none; box-shadow: 0px 15px 40px rgb(26 30 43 / 13%); text-align: center; padding: 2em;}
.popup p {font-size: 21px; font-weight: 600; line-height: 1.4;}
.popup p span {background: #d30d0d; color: #fff; font-size: 16px;padding: 5px 10px; display: block; margin: 1em auto 0; width: 80%; max-width: 400px;}
.popup p a {font-size: 16px; font-weight: 500;}
.close-popup, .bar-right {position:absolute; top:0; right:12px; width: 40px; height: 40px; color:#fff; font-size:22px; z-index:1; cursor:pointer;}
.popup img {width: 100%; height: auto; margin: 0 auto; display: block; padding: 0 0;}
.overlay:before {
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: block;
    background: rgba(0, 0, 0, 0.65);
    position: fixed;
    z-index: 9999999;
}
.overlay:target:before {display: none;}
.overlay:target .popup {top: -280%; left: -100%;}


/*	SLIDE UP POPUP */
.container-bnr {
	background: #ffc600;
    position: fixed;
	display: block;
    width: 100%;
    bottom: 0;
	margin: 0;
    z-index: 9999;
	box-sizing: border-box!important;
	overflow-x: hidden;	
	color:#000;
	text-align: center;
}
.container-bnr a {text-decoration: none; padding: 20px 0; display: block;}
.container-bnr h2 {width: 80%; margin: 0 auto; color: #000; font-size: 20px; font-weight: 600; line-height: 1.2;}
.hide {display:none;}
.closeNow {right: -50000px;}
.bar-right {position: absolute; top: 5px; left: 10px; cursor: pointer; font-size: 20px;}
/*End Slide Down Notification*/ 



/*===================== 
	header styles 
=======================*/

header {
	padding:1em 0;
	border-bottom:4px solid #ffc600;
	background:#555555 url(../siteart/concrete.png) repeat-x;
	background-color: #fff;
}

header .sitewidth {display: flex; justify-content: space-between; align-items: center;}

.logo{
	display:block;
	width: 40%;
}

.logo img{
	width:100%;
	max-width:450px;
	display: inline-block;
}

.contact-top{ 
	width: 60%;
	text-align:right;
	letter-spacing:0.5px;
}

.contact-top h1 {line-height: 1.3; font-size: 20px;}
.contact-top span {display: block;}
.contact-top p {line-height: 1.6; margin-top: .5em; font-size: 14px;}

.navwidth{max-width:1300px; width:100%; margin:0 auto}

/*===================== 
	content styles 
=======================*/
.cutout{
	display:inline-block; 
	zoom:1; 
	width:50%;
}

.text{
	display:inline-block; 
	zoom:1; 
	padding:8% 10%;
	width:30%;
}
.logobox{
	display:block;
	width:25%;
	float:left;
	padding:3% 0 2% 6%;
	}
	.logobox img{
		width:100%;
	}

	
/*===================== 
	layout styles 
=======================*/

#pad{padding:2em 0}
.left{float:left;}
.right{float:right;}

.red{color:#d30d0d}

.graywrap{background: url(../siteart/concrete.png) repeat-x; padding: 1.5em; background-color: #fff;}
.graywrap h1, .graywrap h2 {font-size: 32px;color:#1c1c1c;text-transform:uppercase; text-align:center;padding:10px 0;line-height: 1.3; letter-spacing: .5px;}
img.SquareImg {width: 100%; max-width: 555px;}


/*===================== 
	slideshow styles 
=======================*/
.cycle-slideshow img{
	width:100%;
}
.cycle-pager { 
  text-align:center; width: 100%; max-width: 250px; z-index: 500; position: absolute; bottom: 0; right: 0; overflow: hidden; background: rgba(255,255,255,.5);}

.cycle-pager span { 
    font-family: arial; font-size: 40px; 
     color: #000; padding:5px; cursor: pointer; line-height: 1;
}
.cycle-pager span.cycle-pager-active { color: #de1a22;}
.cycle-pager > * { cursor: pointer;}



/*  scrolling inventory
------------------------------------------------*/
.scrolling-wrap {
    width:100%;
    height:92px;
    overflow:hidden;
	padding: 1.5em 0;
} 
.scrolling{
    width:100%;
    height:92px;
}

/*===================== 
	FORM styles 
=======================*/
#form form {text-align: left;}

#form input {
	width: 100%;
	padding: 5px 10px;
	border:1px solid #DFDFDF;
	margin: 5px 0 15px;
	height: 30px;
	border-radius: 5px;
	box-sizing: border-box;
	font-family: 'Montserrat', sans-serif;
}

#form textarea {
	width: 100%;
	padding: 5px 10px;
	border:1px solid #DFDFDF;
	margin: 5px 0 15px;
	height: 90px;
	border-radius: 5px;
	box-sizing: border-box;
	font-family: 'Montserrat', sans-serif;
}

#form select {
	width: 100%;
	padding: 5px 10px;
	border:1px solid #DFDFDF;
	margin: 5px 0 15px;
	height: 30px;
	border-radius: 5px;
	box-sizing: border-box;
	font-family: 'Montserrat', sans-serif;
}

#form input[type="checkbox"] {
    margin:5px 10px 0 0;
    width:13px;
    height:13px;
    display:inline;
}
#form input[type="radio"] {
    margin:5px 10px 0 0;
    width:15px;
    height:15px;
    display:inline;
}
 
#form input.buttonform,
#form input.buttonform:focus {
    background: #fff;
    border:2px #d30d0d solid;
	border-radius:5px;
    font-size:14px;
	font-weight:bold;
	color: #d30d0d;
	cursor: pointer;
	transition: .3s ease-in-out all;
}
#form input.buttonform:hover {
	background:#d30d0d;
	color:#fff;
	border:2px #d30d0d solid;
	transition: .3s ease-in-out all;
}
 
/*CAPCHA*/
.CaptchaPanel {padding: 25px 0 0 !important;}
.CaptchaMessagePanel {
	font-weight:normal !important;
	font-size:12px;
	line-height:14px;
	padding: 0 !important;
}
.CaptchaWhatsThisPanel a {color:#000;text-align: left;}
.CaptchaWhatsThisPanel a:hover {text-decoration:none;}

/*===================== map ======================*/
.map{
  	height:1300px;
    width: 100%;
    margin: 20px auto 5em auto;
	border:0;
}
/*===================== Square Boxes =======================*/

.grid {
	position: relative;
	margin: 0 auto;
	width: 100%;
	list-style: none;
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	box-sizing: border-box;
}
.grid.maincategories.home h1 {width: 100%; display: block; text-align: center; margin: .75em 0; color: #000; letter-spacing: .5px; font-size: 20px;}

.grid.home figure {width: 25%!important; margin: 0!important;}

.grid figure {
	position: relative;
	overflow: hidden;
	width: calc(14.28% - 1em);
	margin: .5em;
	height: auto;
	background: #3085a3;
	text-align: center;
	cursor: pointer;
}

.effect-ming img {
	width: 100%;
	height: 100%;
}

.grid figure figcaption {
	color: #fff;
	text-transform: uppercase;
	font-size: 1.25em;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
}

.grid figure figcaption::before,
.grid figure figcaption::after {
	pointer-events: none;
}

.grid figure figcaption,
.grid figure figcaption > a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* Anchor will cover the whole item by default */
/* For some effects it will show as a button */
.grid figure figcaption > a {
	z-index: 1000;
	text-indent: 200%;
	white-space: nowrap;
	font-size: 0;
	opacity: 0;
}

.grid figure p {
	word-spacing: -0.15em;
	font-weight: 700;
	color:#fff; text-align:center;
}

.grid figure p {
	margin: 0;
}

.grid figure p span {
	letter-spacing: 1px;
	font-size: 68.5%;
	font-weight: 800;
}
/*----------grid3---------*/

.grid3, .grid6 {
	position: relative;
	margin: 0 auto;
	width: 100%;
	list-style: none;
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	box-sizing: border-box;
}

.grid3 figure {
	position: relative;
	overflow: hidden;
	width: calc(33.33% - 1em);
	margin: .5em;
	height: auto;
	background: #3085a3;
	text-align: center;
	cursor: pointer;
}

.grid6 figure {
	position: relative;
	overflow: hidden;
	width: calc(20% - 1em);
	margin: .5em;
	height: auto;
	background: #3085a3;
	text-align: center;
	cursor: pointer;
}

/***** Ming *****/

figure.effect-ming {
	background: #030c17;
}

figure.effect-ming img {
	opacity: 0.55;
	-webkit-transition: opacity 0.35s;
	transition: opacity 0.35s;
}

figure.effect-ming figcaption::before {
	position: absolute;
	top: 30px;
	right: 30px;
	bottom: 30px;
	left: 30px;
	border: 2px solid #fff;
	box-shadow: 0 0 0 30px rgba(255,255,255,0.3);
	content: '';
	opacity: 0;
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	transition: opacity 0.35s, transform 0.35s;
	-webkit-transform: scale3d(1.4,1.4,1);
	transform: scale3d(1.4,1.4,1);
}

figure.effect-ming p {
	font-size: 22px;
	-webkit-transition: -webkit-transform 0.35s;
	transition: transform 0.35s;
	line-height: 1.2;
}

figure.effect-ming p span {
	padding: 1em;
	opacity: 0;
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	transition: opacity 0.35s, transform 0.35s;
	-webkit-transform: scale(1.5);
	transform: scale(1.5);
}

figure.effect-ming:hover h1 {
	-webkit-transform: scale(0.9);
	transform: scale(0.9);
}

figure.effect-ming:hover figcaption::before,
figure.effect-ming:hover p span {
	opacity: 1;
	-webkit-transform: scale3d(1,1,1);
	transform: scale3d(1,1,1);
}

figure.effect-ming:hover figcaption {
	background-color: rgba(58,52,42,0);
}

figure.effect-ming:hover img {
	opacity: 0.4;
}

/*-- RESPONSIVE table 6/15/20 ---------------*/
.responsive-card-table {  border-collapse: collapse; width: 100%}

.responsive-card-table th{background: url(../siteart/concrete.png) repeat-x; font-weight: 700; line-height: 1.4; background-color: #fff;}

.responsive-card-table tr,
.responsive-card-table th,
.responsive-card-table td {
  border: 1px solid #0a0a0a;
	padding: 5px 1.5em;
	text-align: left;
	font-size:14px;
}



/*===================== 
	footer styles 
=======================*/
footer {
	width: 100%;
	background:#fff;
	text-align:center;
	color:#000;
	border-top: solid #ffc600 4px;
	}

.bottom {
	background:#101010 url(../siteart/concrete.png) repeat;
	background-color: #fff;
	color: #000;
	display: flex; 
	padding: 3em 0;
	line-height: 1.6;
	}
	.bottom a{
		color: #000;
		text-decoration:none;
		display: block;
		transition:background-color 300ms ease, background-color 300ms ease, all 300ms ease;
		}
		.bottom a:hover{color: #d30d0d;}

.bottom .sitewidth {
	display: flex; 
	justify-content: center;
	flex-wrap: wrap;
}

.footer-column {width:calc(33.33% - 2em); margin: 1em; box-sizing: border-box; line-height: 2; font-size: 14px;}

a.footerlink:link,
a.footerlink:visited, 
a.footerlink:active {
	text-decoration: none; 
	font-size:12px;
	color:#000;
	}
	a.footerlink:hover {
		text-decoration:underline; 
		font-size:12px;
		color:#000;
		}

.footertext {
	font-size:12px; 
	color:#000;
	}

.smallfootertext {
	font-size:10px; 
	color:#000;
	}

.divfooter {
	width: 85%;
	max-width:770px; 
	text-align:center; 
	margin:0 auto;
	padding:20px;
	}
	
/*===================== 
   Responsive styles 
=======================*/

@media screen and (min-width: 1700px) {
	.grid.maincategories figure { width: 12.5%; }
}

@media screen and (max-width:1500px) {
	figure.effect-ming p {font-size: 18px;}
}

@media screen and (max-width:1300px) {
	a.invbtn{
		font-size:14px;
		width:50%;
		padding:1%;
		border-radius:5px;
	}
	a.whitebtn{
		font-size:14px;
		border-radius:5px;
	}
	.grid.home figure {width: 33.33%!important; margin: 0!important;}
	.grid figure {width: calc(25% - 1em);}
	.grid3 figure, .grid6 figure {width: calc(33.33% - 1em);}
}

@media screen and (max-width:1175px) {
	#pad{padding:2em 0}
	.logo{width: 100%;}
	.logo img {margin: 0 auto; display: block;}
	header .sitewidth {flex-direction: column;}
	.contact-top {text-align: center; margin-top: 1em;}
	
	.container-bnr a {padding: 15px 0;}
	.container-bnr h2, .bar-right {font-size: 18px;}
		
	/*table*/
	.spec {padding:0.75em 1.5em;font-size:12px;}
	.sitewidth{width: 90%;}
}

@media screen and (min-width: 1031px) {
	.grid.maincategories figure { width: calc(25% - 1em); margin: .5em; }
}

@media screen and (max-width:1030px) {
	h1{font-size:18px; margin-bottom:8px}
	header {padding:2em 1em;}
	
	.container-bnr a {padding: 10px 0;}
	.container-bnr h2, .bar-right {font-size: 16px;}
	
	.contact-top{ 
		margin:1em auto 0 auto;
		float:none;
		text-align:center;
		padding-right:0;
		width: 100%;
	}
	
	.grid figure {width: calc(33.33% - 1em);}
	
}

@media screen and (max-width:1000px) {
	/*table*/
	.spec {padding:0.75em 1.5em; font-size:13px;}
	.spec_list{float:none; width:100%; text-align:center}
}

@media screen and (max-width:848px) {
	.column4 {
		width:50%;
		padding-left:0;
		margin:0 auto 15px auto;
	}
	.graywrap h2 {font-size: 24px;}
	.bottom {text-align:center; padding: 2em 0;}
	.bottom .sitewidth {flex-direction: column;}
	.footer-column {width: 100%; margin: 1em auto;}
	
}

@media screen and (max-width:700px) {	
	.logobox{
		width:60%;
		float:none;
		padding:3% 2%;
		margin:0 auto;
	}
	.mobilecontact{
		display:block;
		padding:2%;
	}
	.footcontact{
		display:none;
	}
	.col-1-2 { 
		display:block; 
		float:none;
		width: 80%;
		padding:3%;
		margin:0 auto;
	}
	.CaptchaImagePanel{ text-align:center; margin:0 auto; padding:0 }
	.CaptchaMessagePanel{width:100%;}
	
	
	.responsive-card-table tr, .responsive-card-table th, .responsive-card-table td{font-size: 11px;}
	
	.grid figure {width: calc(50% - 1em);}
	.grid.home figure {width: 50%!important; margin: 0!important;}
	.grid.maincategories.home h1 {font-size: 18px;}
}

@media screen and (max-width:650px) {	
		
	.column2 {
		width:100%; 
		float:none; 
		margin:0 auto; 
		text-align:center;
	}
	.service-list ul ul li{margin-left:0;list-style-position:inside;}
	.service-list ul li{margin-left:0;list-style-position:inside;}
	
	.map{height:600px;}	
	
	.CaptchaMessagePanel{margin:0 auto;width:100%}
	.CaptchaAnswerPanel{margin:0 auto;}
	.CaptchaWhatsThisPanel{margin:0 auto;}
	
}

@media screen and (max-width:585px) {
	
	.twothird{
		width:100%; 
		float:none; 
		text-align:center;
		margin-bottom:2em;
		padding-right:0;
	}
	.onethird{
		width:100%; 
		float:none; 
		text-align:center
		}
}

@media screen and (max-width:500px) {
	.column4 {
		width:100%;
		margin:10px auto ;
		float:none;
	}
	
	.cycle-pager {display: none;}
}

@media screen and (max-width:480px) {	
	.grid figure .grid figure {width: 100%; margin: 1em 0;}
	.grid.home figure {width: 100%!important; margin: 0!important;}
	.grid.maincategories.home h1 {font-size: 16px;}

	.cutout{display:none;}
	.text{
		display:block;
		padding:2% 0;
		width:100%;
		margin:0 auto;
		text-align:center;
	}
	a.invbtn{margin:3% auto;}
	.left{float:none;}
	.right{float:none;}
	.txt_rt{text-align:center;}
	
	.social{
		width:100%
	}
	.cycle-pager { 
	   display:none; 
	}	

	
.SquareImg{ width:100%; margin:0 auto; text-align:center;}
	
}

@media screen and (max-width:320px) {
	.responsive-card-table tr, .responsive-card-table th, .responsive-card-table td{font-size: 10px;}

}