﻿/***** BEGIN RESET *****/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	background: transparent;
	border: 0;
	margin: 0;
	padding: 0;	
}

ol, ul {
	list-style: none;
}

table{border-collapse:collapse; width:100%;}
td{vertical-align:top;}

/* Make HTML 5 elements display block-level for consistent styling */  
header, nav, article, footer, address {  
    display: block;  
} 
.list-top-section .list-listings-count {
	color: #256D99!important;}
/*-------- COLORS --------
YELLOW: #ffff01;
GRAY: #5a5959;
*/

/***** END RESET *****/

/* Clearfix */
.cf:before,
.cf:after {
    content: " ";
    display: table;
}
.cf:after {
    clear: both;
}
.cf {
    *zoom: 1;
}
.clear {clear: both;}

/*-------- BODY STYLES --------*/

body {font-family: 'Montserrat', sans-serif !important; font-size:16px; font-weight:300; line-height: 30px; -webkit-text-size-adjust:none; background: #fff; color: #000;overflow-x:hidden !important;}
h1 { font-size: 30px; color:#fff; text-align:center; text-transform:uppercase; font-weight:300;line-height:30px;}
h2 {font-size: 36px; text-align:center; color:#fff; text-transform:uppercase; font-weight:700;line-height: 36px;}
h3 {font-size:25px; color: #000; text-transform:uppercase; font-weight: 400; text-align:left; padding-bottom:8px;}
h3 a{ color: #7c1318;}
h4{ font-size: 20px; color: #5a5959; font-weight: 700;}
h5{ font-size: 18px;color: #5a5959; font-weight: 700; padding-bottom: 8px;}

a{color:#000;}
a:link, a:visited, a:active {text-decoration:none;}
a:hover { text-decoration: underline;}
strong {font-weight:700;}

hr{ border: 1px solid #f3f3f3;}

.right{float: right;}
.left{text-align:left;}
.center {text-align:center;}
.gray{background:#e4e4e4;}

#pad{padding:30px 0}


/*---POP-UP -----------------------------------*/

*, *:after, *:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.popup-box {
	width: 50%;
	margin: 0 auto;
	background: rgba(0,0,0,0.2);
	padding: 35px;
	border-radius: 20px/50px;
	background-clip: padding-box;
	text-align: center;
}
.popup .close {
    position: absolute;
    top: 10px;
    right: 12px;
	transition: all 0.2s;
	font-size: 30px;
	font-weight: bold;
	text-decoration: none;
	color: #fff;
	border: 1px solid #fff;
	padding:0 10px 0 10px; 
	background: none;
	line-height:40px; 
	z-index: 150;
}
.popup .close:hover {
  background: #ffff01; color: #000;}
.popup .content {
  max-height: 60%;
  overflow: auto;
}

/*Let's make it appear when the page loads*/
.overlay:target:before {
    display: none;
}
.overlay:before {
	content:"";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: block;
	background: rgba(0, 0, 0, 0.85);
	position: fixed;
	z-index: 99999;
}
.popup {
	background:#333; 
	/*background: url("../siteart/powerbully-popup.jpg") no-repeat center;
	background-size:cover; */
	color:#fff;
	font-size: 16px;
	font-weight: 300;
	border:2px solid #fff;
	border-radius: 5px;
	width: 70%;
	max-width: 1800px;
	position: absolute;
	top: 3.5vw;
	left: 0;
	right: 0;
	float:none;
	padding:10px 0;
	margin: 0 auto;
	text-align:left;
	z-index: 99999999;
	overflow: hidden;
	-webkit-transition: all 0.6s ease-in-out;
	-moz-transition: all 0.6s ease-in-out;
	transition: all 0.6s ease-in-out;
}
.popup:before {
	content:"";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: block;
	background: rgba(0, 0, 0, 0.5);
	position: absolute;
	z-index: 1;
}

.overlay:target .popup {
    top: -280%;
    left: -100%;
}

.popup .wrapper-hero {margin:10px 30px; z-index: 111; position:relative;}
.popup .wrapper-hero img {width: 95%;}

.popup .wrapper-inner{width:85%; max-width: 800px; padding: 20px 0; margin:0 0 0 40px; text-align: left !important; z-index: 111; position:relative;}
.popup .wrapper-inner img {width: 100%;}
.popup .wrapper-inner p{font-weight: 400; font-size: 15px;}



.popup a, .popup h1{text-align: left !important; color: #fff; /*margin-bottom: 12px;*/ font-weight: 600; letter-spacing: .5px}
.popup h1{text-align: left !important; color: #fff; font-size:45px; line-height:1.1;  margin-bottom: 15px;}
.popup h2{text-align: left !important; color: #fff; font-size:26px; line-height:1.1; margin-bottom: 15px;}

.popup .two-cols img {width:100%; max-width:222px; margin:0; padding:0;}

.popup #yellow-btn{background: #ffff01; color: #000; padding: 12px 20px; text-align: center; font-weight: 700; float: left;}
.popup a#yellow-btn:hover{text-decoration: none; background: #fff;}

.popup #white-btn{background: #fff; color: #000; padding: 10px; text-align: center; font-weight: 700; float: left;}
.popup a#white-btn:hover{text-decoration: none; background: #CE1922; color: #fff}

.popup p.pad-left {padding:0 0 0 15px;}


#pop-logo{width: 100%; max-width: 300px; text-align: left; display: block}

/*---Header------------------------------------*/
.header-position{width: 100%;  position: fixed; z-index: 999;}
.header-top{background: #5a5959; color:#fff; text-align: right; padding:5px 0px;  width: 100%;}
.header-top p{color:#fff !important; text-align: right; display: inline-block; padding: 0px 10px; font-size: 13px; margin-right: 3%;}
.header-top p a{color:#fff !important;}
.header-top .fa{margin-right: 10px; font-size: 15px;}

.header {width:100%; float: left; background-color: rgba(0,0,0, 0.8); box-shadow: 0px 6px 13px -4px rgba(0,0,0,0.4);}
.header .header-inner{width:95%; padding: 0; margin: 0 auto}


#topleft {  display: inline-block;}
#logo img{width:100%; max-width: 180px; display: inline-block; margin-bottom:-8px;}

#topright {display:inline-block; float: right;}



/*--slideshow--------------------------------------------------*/
.cycle-slideshow img{width: 100%;}

.cycle-prev {left: 25px; position: absolute; z-index: 999; top: 26vw; color: #fff;}
.cycle-prev .fa, .cycle-next .fa{color: #fff; opacity: .7; font-size: 28px;}
.cycle-prev .fa:hover, .cycle-next .fa:hover{opacity: 1.0; transform: scale(1.12); transition: all 0.3s;}

.cycle-next {right: 25px; position: absolute; z-index: 999; top: 26vw; color: #fff;}



/*-----BODY ------------------------------------------------------------**/
.wrapper { width: 100%; margin: 0 auto; text-align:center;}
.wrapper-inner {padding: 20px 0px; width: 80%; margin: 0 auto; text-align:center;}
.wrapper-inner p{text-align:left; padding: 5px 0px;}

#pageimage{width: 100%; display: block;}

.welcome{width: 95%; margin: 0 auto; text-align:left; padding: 2% 0;}

.black-bar{background:#000;  width:100%; margin:0 auto;}
.black-bar h1{	
	text-align:left;
	color:#fff;
	font-size: 32px;
	font-weight:700;
}


.welcomeleft{width:53%; float:left; text-align:left; margin-left:8%;}
.welcomeleft p{ padding:5px 0px; font-size:15px;}

.welcomeright{width:38%; float:right; position:relative; }
.excavator{position:absolute; top: -8vw; z-index:995; width:105%; margin-left: 3%;}

#black-btn{background: #000; color: #fff; display: inline-block; margin: 5px 5px 5px 0; padding: 10px 0; width: 48%; text-decoration: none; border:1px solid #000; float: left;}
#black-btn:hover{background: none; color: #000;}


#buttons{width:100px;
    margin: 10px 0px;
    background: none; 
    line-height:14px;
    color:#000;
	border: 2px solid #000; 
	padding: 10px;
	font-size: 16px;
	font-weight:400;
	text-decoration:none; 
}
#buttons:hover{background: #000; color:#f3f3f3; }


/**--------COLUMNS-------------------- **/
.col-left{
	float:left; 
	width:60%; 
	padding: 15px 0px;
	 margin: 25px 0px;
	 text-align:left;
}
.col-left img{padding-bottom: 20px;}
.col-left p{text-align:left;}
.col-right p, .col-right h2{
	text-align:left;
}
.col-right{
	float:right; 
	width:40%; 
	padding: 15px 0px;
	margin: 25px 0px; 
}

.two-cols{display: inline-block; text-align:left; vertical-align: top; width:48%; padding: 30px 0px;}
.two-cols p{text-align:left;}
.two-cols img{ padding-bottom: 10px; width:10%;}
.two-cols img:hover{opacity:.8;}

.three-cols{display: inline-block; text-align:center; vertical-align: top; width:33%; padding: 30px 0px;}
.three-cols p{text-align:center;}
.three-cols img{ padding-bottom: 10px; width:15%;}
.three-cols img:hover{opacity:.8;}


.team{display:inline-block; width: 100%; max-width:450px; padding: 20px 0px; float:left;}


/**----------SEARCH BOX ----------------------------------------*/
.quick-search {width:100%;background:#111 url(../siteart/search-bg.jpg) no-repeat;  padding:4% 0; font-family: 'Montserrat', sans-serif;}
.quick-search h3{font-size: 26px; text-transform:uppercase; padding:5px 0px;}
.detailed-search-wrap {padding: 20px 0;}
.content {
	width: 85%;
	margin: 0 7.5%;
}

.detailed-form {
	margin: auto;
}

.detailed-row {
	margin:5px 0 5px;
	font-size: 18px;
}
.column3 {
	width: 33.33%;
	float: left;
	padding-right: 20px;
	box-sizing: border-box;
	margin-top: 5px;
}
.column2 {
	width: 49%;
	float: left;
	padding-right: 20px;
	box-sizing: border-box;
	margin-top: 5px;
}
.last {
	padding-right: 0px;
}
.detailed-search input[type='submit'] {
	font-size: 16px;
	background: #5a5959;
	width: 100%;
	margin-top: 2px;
	height: 40px;
	color: #fff;
	display: inline-block;
	border-radius: 0 !important;
	-moz-border-radius: 0 !important;
	-webkit-border-radius: 0 !important;
	outline: none;
	border: none;
	transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-webkit-transition: all .2s ease-in-out;
	-webkit-border-radius: 0;
	-webkit-appearance: none;
	border-radius: 0;
	font-family: 'Montserrat', sans-serif;
	font-weight:400;
	text-transform: uppercase;
	margin-top: 20px;
	cursor: pointer;
}
.detailed-search input[type='submit']:hover{
	background:#000;
	color:#fff;
	border:1px solid #000;
}
.detailed-search input[type='text'] {
	width: 100%;
	margin: 2px 0;
	padding: 0 8px;
	font-size: 14px;
	height: 40px;
	background-color: #f9f9f9;
	border: 1px solid #bebebe;
	box-sizing: border-box;
	-webkit-border-radius: 0;
	border-radius: 0;
}
.detailed-search-wrap h3 span {
	color: #d7d7d7;
}


@media screen and (max-width: 650px) {
 
  .column3, .column2 {width:100%; padding-right:0px;}
  .detailed-row {margin:0px;}
}


/* NOUI SLIDER */
.detailed-search .hp-slider .example-val {padding: 5px 0;}
.detailed-search .noUi-target{position: relative; direction: ltr}
.detailed-search .noUi-origin{position: absolute; right: 0; top: 0; left: 0; bottom: 0; border-radius: 2px}
.detailed-search .noUi-handle{position: relative; z-index: 1}
.detailed-search .noUi-marker, .detailed-search .noUi-pips, .detailed-search .noUi-tooltip, .detailed-search .noUi-value{position: absolute}
.detailed-search .noUi-horizontal{height: 12px; z-index: 0}
.detailed-search .noUi-horizontal .noUi-handle{width: 25px; height: 21px; left: -13px; top: -6px}
.detailed-search .noUi-background{background: #ccc;}
.detailed-search .noUi-connect{background: #fff !important; border: 1px #fff solid;}
.detailed-search .noUi-target{width: calc(95% - 15px); margin: 15px auto 0 auto;}
.detailed-search .noUi-handle{background: #5a5959 !important; border: 1px solid #000; border-radius: 3px;}
.detailed-search .noUi-handle:after, .detailed-search .noUi-handle:before{content: ""; display: block; position: absolute; height: 12px; width: 1px; background: #fff; left: 10px; top: 3px}
.detailed-search .noUi-handle:after{left: 12px}
.detailed-search .noUi-pips-horizontal{padding: 5px 0; height: 10px; top: 100%; left: 0; width: 100%}
.detailed-search .noUi-marker-horizontal.noUi-marker{margin-left: -1px; width: 1px; height: 5px; background: #777;}
.detailed-search .example-val{font-size: 12px; font-weight: 600; color: #fff; text-align: left} .detailed-search .example-val span{font-weight: 400;}
.detailed-search #slider-price-value-lower:before, .detailed-search #slider-price-value-upper:before{content: '$'; padding-right: 2px}




/*--- ZOOM HOME PAGE ------------------------------*/
.zoom-container {
	width: 25%;
	*width: 23%;
	position: relative;
	overflow: hidden;
	display: inline-block;
	font-size: 16px;
	border: 1px solid #fff;
	vertical-align: top;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	margin: 10px 0px;
}
.zoom-container img {
	display: block;
	width: 100%;
	height: auto;
	-webkit-transition: all .5s ease; /* Safari and Chrome */
    -moz-transition: all .5s ease; /* Firefox */
    -ms-transition: all .5s ease; /* IE 9 */
    -o-transition: all .5s ease; /* Opera */
    transition: all .5s ease;
}
.zoom-container .zoom-caption {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 10;
	background: rgba(0, 0, 0, .5);
	-webkit-transition: all .5s ease; /* Safari and Chrome */
    -moz-transition: all .5s ease; /* Firefox */
    -ms-transition: all .5s ease; /* IE 9 */
    -o-transition: all .5s ease; /* Opera */
    transition: all .5s ease;
}
.zoom-container .zoom-caption h3 {
	display: block;
	text-align: center;
	font-size: 30px;
	font-weight:300;
	padding: 5px 0;
	text-transform: uppercase;
	color: #fff;
	margin: 28% 0;

}


.zoom-container:hover img {
	-webkit-transform:scale(1.25); /* Safari and Chrome */
    -moz-transform:scale(1.25); /* Firefox */
    -ms-transform:scale(1.25); /* IE 9 */
    -o-transform:scale(1.25); /* Opera */
     transform:scale(1.25);
}
.zoom-container:hover .zoom-caption {
	background: none;
}




/**---- SCROLLING MANU BAR -----------------------------*/
.brandbar{
	background:#e4e4e4;
	margin: 0 auto;
	text-align: center;
	padding:10px 0px;
	width:100%;
	border-bottom: solid 2px #5a5959;
}
.manu-slider img{width:100%;  padding: 0px 15px;}


/*------- FOOTER STYLES -------------------------------------*/

.map-overlay{position: absolute; margin-top: -360px; left: 0; right: 0; } 
.map-overlay-inner{ margin: 0 auto; text-align:center;}
.map-overlay h1, .map-overlay h2{color:#000;}


.footer{background: #5a5959; color:#fff; padding:10px 0px;}
.footer .inner{width: 95%; margin: 0 auto;}

.footer a{color: #fff;}

.footer .left{float:left;}
.footer .left p{font-size: 12px; color: #fff;}

.footer .right{ float: right; margin-top: 20px;}
.footer .right .fa,.footer .right .fab{font-size: 25px; margin: 0 10px;}
.footer .right .fa:hover, .footer .right .fab:hover{opacity: .8}


/*--FORM STYLES---------------------------------------------*/

#formpage { vertical-align:top; margin: 0 auto; }

#formpage div {
	vertical-align:top;
	padding:5px 5px;
	color: #000;
}

#formpage input {
	padding:6px 5px 10px;
	border:1px solid #8e8d8d;
	font-size:13px;
	background:#fff;
}

#formpage textarea {
	padding:6px 0px;
	border:1px solid #8e8d8d;
	font-weight: 700;
	color:#000;
	font-size:12px;
	background:#fff;
	margin-top: 5px;
}

/* selects have similar styles to input & textarea fields, but with no padding. Text in a dropdown select is positioned differently */
#formpage select {
	border:1px solid #8e8d8d;
	color:#202e3b;
	vertical-align:middle;
	font-size:12px;
	line-height:normal;
	padding:5px;
	width:100%;
}

.formfield {
	width:31%; 
	float:left; 
	margin-right: 12px; 
	margin-top: 10px;
	color: #000;
	
}
#formpage input  {
    width:100%;
	margin-top: 5px;
}
 
#formpage input.larger  {
    width:100%;
}

#formpage textarea {
    width:100%;
    height:85px;
}

#formpage input.radio {
    padding:0; 
    border:0;
    margin:0 5px 0 0;
    width:15px;
    height:15px;
    display:inline;
	
 }

/* focus states of various types of fields */
#formpage input:focus,
#formpage textarea:focus,
#formpage select:focus {
	background:#abacac; 
	color:#FFF;
	border:1px solid #abacac;
	outline-style:none;
}
#formpage input.radio:focus,
#formpage input.checkbox:focus {
	background:none; 
	border:0;
	outline-style:none;
}

#formpage input.button,
#formpage input.button:focus,
#formpage button.button,
#formpage button.button:focus{
    width:100px;
    margin:0;
    background: none; /* For browsers that do not support gradients */
    line-height:14px;
    color:#000;
	border: 2px solid #000; 
	padding: 10px;
	font-size: 16px;
	font-weight: 300;
	cursor:pointer;
}
#formpage input.button:hover,
#formpage button.button:hover{
	width:100px;
    margin:0;
    padding:10px 0px;
    background: #000; /* For browsers that do not support gradients */
    border: 2px solid #000;
    line-height:14px;
    color:#fff;
}

/* for plain text next to an input field, if not using a table structure */
#formpage label.basic {
    color:#212121;
    font-size:13px;
    text-align:left;
} 

/*control the Captcha */

.CaptchaPanel {margin:0 auto !important;padding:0 0 0 0 !important;line-height:normal !important;color:#000;width: 30%;}

.CaptchaImagePanel {
	
margin-top: 10px;
padding:0 0 0 0;
}

.CaptchaMessagePanel {
padding:0 0 0 0 !important;
margin:0 0 0 0 !important;
font-weight:normal !important;
font-size:12px;
line-height:14px;
text-align: center;
}

.CaptchaAnswerPanel {
margin:0 0 0 0;
padding:2px 0px 2px 0px !important;
}

.CaptchaWhatsThisPanel {
	line-height:0;
	margin:0 0 10px 0;
	padding:10px 0 10px 0 !important;
}
.CaptchaWhatsThisPanel a {color:#000;}
.CaptchaWhatsThisPanel a:hover {text-decoration:none;} 




/*-------- RESPONSIVE STYLES ----------------------------*/

@media screen and (max-width: 1500px){
	.popup {width: 75%;}
}

@media screen and (max-width: 1200px){
.header{position:relative; background:#000;}	
}



@media screen and (max-width: 1100px){
	.popup {width: 75%;}
	
/*--------Form Styles----------*/

#formpage textarea {
	padding: 6px 0px;
	border:1px solid #8e8d8d;
	font-weight: 700;
	font-size:12px;
	background:#fff;
	margin-top: 5px;
}

/* selects have similar styles to input & textarea fields, but with no padding. Text in a dropdown select is positioned differently */
#formpage select {
	padding:5px;
	width:100%;
}
#comments{text-align:left;}
.formfield {
	width: 97%;
	float:left;
	text-align:left;
	/* margin-right: 10px; */
	/* margin-top: 10px; */
}
#formpage input  {
    width: 95%;
    margin-top: 5px;
}
#formpage textarea {
    width: 95%;
    height:85px;
	float:left; margin-bottom:20px;
}
.message{text-align:left;}
/*control the Captcha */
.CaptchaPanel {margin:0 auto !important; padding:0 0 0 0 !important; line-height:normal !important; width: 95%; margin: 0 auto;}


.zoom-container {float:none; width: 32%;}
.zoom-container .zoom-caption h3 {font-size:22px; margin:23% 0;}
}


@media screen and (max-width: 895px){
.header-top{ text-align:center; }
.wrapper-inner{width: 90%;}

.three-cols{width:90%; padding-top:20px;}
.four-cols{width:40%; padding-top:20px;}

.hidden{display:block;}

.welcomeleft{width:90%; }
.welcomeright{width:90%; float:none;}

.excavator{display:none; }

.zoom-container {float:none; width: 32%;}
.zoom-container .zoom-caption h3 {font-size:22px; margin:23% 0;}

h1{font-size: 25px;}
h2{font-size: 30px;}

	#black-btn{width: 100%; margin:10px 0;}
	
	.header-position{position: relative;}	
	
	.cycle-prev { top: 22vw;}
	.cycle-next {top: 22vw;}


}

@media screen and (max-width: 649px){
.popup {top: 20vw; width: 90%; padding:0 0;}
.popup h2{font-size: 25px;}	
.popup .wrapper-inner{width:100%; max-width: 100%; padding:50px 10px; margin: 0 auto; background: rgba(0,0,0,.4)}
	.popup #white-btn{font-size: 13px;}
	.popup .two-cols p {text-align: center;}
	
.two-cols{width: 90%; text-align:center; float:none;}
.four-cols{width:90%;}

.col-left, .col-right{width:95%;}

.zoom-container {float:none; width: 100%;}
.zoom-container .zoom-caption h3 {font-size:30px; margin:25% 0;}	
}

@media screen and (max-width: 320px){
	


}
