/*#####################################################################################################################*/
@font-face {
    font-family: 'latoRegular';
    src: url('../font/lato/lato-v22-latin-regular.eot');
    src: url('../font/lato/lato-v22-latin-regular.eot?#iefix') format('embedded-opentype'),
         url('../font/lato/lato-v22-latin-regular.woff') format('woff'),
         url('../font/lato/lato-v22-latin-regular.ttf') format('truetype'),
         url('../font/lato/lato-v22-latin-regular.svg#lato-v22-latin-regular') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'latoBold';
    src: url('../font/lato/l-bold-webfont.woff') format('woff'),
         url('../font/lato/Lato-Bold.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
/*GLOBAL STYLE */
html, body {font-family: latoRegular, Verdana, Arial, helvetica, Calibri; color: #000; font-size: 18px; line-height: 1.2em; font-weight: normal;   background-color: #fff; height: 100%; width: 100%; margin: 0; padding: 0;}

a,a:visited {text-decoration: none; color: #65BC46; font-size: 18px; font-family: latoRegular, Verdana, Arial, helvetica, Calibri; outline: none;}
a:hover,a:visited:hover {text-decoration: none; color: #000; outline: none;}

.container-full {margin-right: 0; margin-left: 0; padding-left: 0; padding-right: 0;}

button {position: relative; margin: 0; padding: 1em; z-index: 1;}
@media (min-width:768px) {.container-full {width:100%}}
@media (min-width:992px) {.container-full{width:100%}}
@media (min-width:1200px) {.container-full {width:100%}}

.container {
  padding-right: 0px;
  padding-left: 0px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .container {width: 750px;}
}
@media (min-width: 992px) {
  .container {width: 970px;}
}
@media (min-width: 1200px) {
  .container {width: 1090px;  }
}
@media (min-width: 1520px) {
  .container {width: 1500px;  }
}
.row {margin-right: 0px; margin-left: 0px;}
.row-centered {text-align: center;}
.col-centered {margin: 0 auto;}
/*#####################################################################################################################*/
/*UPGRADE BROWSER PAGE*/
.container-ie{border:none;background:url('../images/sprite/browsers-sprite.png') -506px 0px;  height:126px;width:126px;}
.container-chrome{border:none;background:url('../images/sprite/browsers-sprite.png')  0px 0px;height:126px;width:126px;}
.container-firefox{border:none;background:url('../images/sprite/browsers-sprite.png') -127px 0px;height:126px;width:126px;}
.container-safari{border:none;background:url('../images/sprite/browsers-sprite.png') -256px 0px;height:126px;width:126px;}
/*#####################################################################################################################*/
/*TOP*/
/*navigation*/
.navbar-default {margin-bottom: 0px; z-index: 1000; border: none; border-radius: 0; background-color: transparent;}
.navbar-default .navbar-nav > li > a {padding: 15px 15px 18px 15px; margin-top: 30px; color: #000; outline: none; font-size: 14px; font-family: latoRegular, Verdana, Arial, helvetica, Calibri; transition: all 0.1s linear; -webkit-transition: all 0.1s linear; -moz-transition: all 0.1s linear;}
.navbar-default .navbar-nav > li > a:hover {color: #fff; }

.navbar-default .navbar-nav > li > a::before {  
  transform: scaleX(0);
  transform-origin: bottom right;
}

.navbar-default .navbar-nav > li > a:hover::before {
  transform: scaleX(1);
  transform-origin: bottom left;
}

.navbar-default .navbar-nav > li > a::before {
  content: " ";
  display: block;
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  inset: 0 0 0 0;
  background: #65BC46;
  z-index: -1;
  transition: transform .3s ease;
}

@media (max-width: 1520px) {
}
@media (max-width: 1200px) {
}
@media (max-width: 992px) {
	.navbar-default .navbar-nav > li > a {padding: 18px 20px 18px 20px;}	
}
@media (max-width: 767px) {
	.navbar-default .navbar-nav > li {padding: none;}
	.navbar-default .navbar-nav > li > a {padding: 4px 4px 4px 8px; margin: 0; font-size:14px; text-align: left;}
	.navbar-collapse {z-index: 1000; background-color: #65BC46;}	
	.navbar-collapse.collapse {text-align: left; /* Set this */}
}
/*mobile navbar*/
.navbar-toggle {position: relative; float: right; padding: 9px 7px; background-color: transparent; background-image: none; border: 0px solid transparent; border-radius: 0px; margin-top: 35px; margin-bottom: 5px; margin-right: 10px;}
.navbar-toggle .icon-bar {display: block; width: 28px; height: 5px; border-radius: 0px;}
.navbar-toggle .icon-bar + .icon-bar {margin-top: 5px;}
.navbar-default .navbar-toggle .icon-bar {background-color: #000;}
.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {background-color: #65BC46;}
.navbar-collapse {z-index: 1000; padding-right: 15px; padding-left: 15px; overflow-x: visible; -webkit-overflow-scrolling: touch; border-top: 0; -webkit-box-shadow: none; box-shadow: none;}
.navbar-collapse.in {overflow-y: auto;}
/*#####################################################################################################################*/
/*HEADINGS*/
h1 {color: #fff; font-size: 35px; line-height: 45px; font-family: latoBold, latoRegular, Verdana, Arial, helvetica, Calibri; margin: 0; padding:20px;}
h2 {color: #000; font-size: 21px; line-height: 33px; font-family: latoBold, latoRegular, Verdana, Arial, helvetica, Calibri; margin: 0; padding: 0px 20px 20px 20px;}
h3 {color: #000; font-size: 32px; line-height: 33px; font-family: latoBold, latoRegular, Verdana, Arial, helvetica, Calibri; margin: 0; padding: 0px;}
h4 {color: #fff; font-size: 32px; line-height: 33px; font-family: latoBold, latoRegular, Verdana, Arial, helvetica, Calibri; margin: 0; padding: 0px;}
h5 {color: #fff; font-size: 29px; line-height: 33px; font-family: latoBold, latoRegular, Verdana, Arial, helvetica, Calibri; margin: 0; padding: 0px; text-shadow: 0px 0px 6px rgba(0,0,0,0.6);}
h6 {color: #000; font-size: 23px; line-height: 33px; font-family: latoRegular, Verdana, Arial, helvetica, Calibri; margin: 0; padding: 0px;}
h7 {color: #000; font-size: 15px; line-height: 18px; font-family: latoBold, latoRegular, Verdana, Arial, helvetica, Calibri; margin: 10px 0; padding: 10px 0;}
h8 {color: #000; font-size: 22px; line-height: 28px; font-family: latoBold, latoRegular, Verdana, Arial, helvetica, Calibri; margin: 0; padding: 0px; text-align: center;}
h9 {color: #000; font-size: 43px; line-height: 44px; font-family: latoBold, latoRegular, Verdana, Arial, helvetica, Calibri; margin: 0; padding: 0;}
h10 {color: #000; font-size: 21px; line-height: 33px; font-family: latoBold, latoRegular, Verdana, Arial, helvetica, Calibri; margin: 0; padding: 0px;}
/*#####################################################################################################################*/
/*CONTENT STYLES*/
.clear {clear: both;}
.contentpad {padding: 50px 4%;}
.contentpad2 {padding: 0px 50px 0 0;}
.contentpad3 {padding: 5% 0;}
.contentpad4 {padding: 0 20px;}
.contentpad5 {padding: 20px;}
.contentpad6 {padding: 100px 8%;}
.contentpad7 {padding: 8%;}
.contentpad8 {padding: 3.5% 2% 0% 2%;}
.contentpad9 {padding-right: 5%}
.contentpad10 {padding: 10px;}

.teampad {padding-left: 25%;}
.teampad2 {padding-left: 12.5%; padding-right: 12.5%;}

.platform {padding: 0 5%;}

.whitebg {background-color: #fff; height: auto; overflow: hidden;}
.greybg {background-color: #C5C5C5; height: auto; overflow: hidden;}
.darkgreybg {background-color: #3B4043; height: auto; overflow: hidden;}
.green {color: #65BC46;}
.greybotbg, .greybotbg a  {background-color: #4D5153; height: auto; overflow: hidden; font-size: 14px;}
.lightgreybg {background-color: #F7F7F7;}
.lineborder {border: 1px solid lightgrey;}
.greenbg2 {background-color: #65BC46;}

hr {border-bottom: 1px solid black;}

#background-video {
  object-fit: cover;
  width: 100%;
  height: 70vh;  
  top: 80;
  left: 0;
  position: relative;
}
.viewport-header {
  position: absolute;
	z-index: 5000;
  display: flex;
 width: 50%;
 padding: 7.5% 12% 0 7%;
}
.greenbgtop {   
 background-color: rgba(101, 188, 70, 0.8);
-moz-transform: translate(20px, 0px) skew(0deg, -4deg);
-webkit-transform: translate(20px, 0px) skew(0deg, -4deg);
-o-transform: translate(20px, 0px) skew(0deg, -4deg);
-ms-transform: translate(20px, 0px) skew(0deg, -4deg);
transform: translate(20px, 0px) skew(0deg, -4deg);
}

.diagonalbg {background-image: url(../images/background/diagonal.jpg); background-repeat: no-repeat; background-color: #fff;}
.builders {background-image: url('../images/background/builders.jpg'); background-position: center; }
.buildingbg {background-image: url(../images/background/building-bg.jpg); background-repeat: no-repeat; padding: 5% 0;}
.successes {background-image: url(../images/background/successes.jpg); background-repeat: no-repeat; padding: 5% 0;}
.bricks {background-image: url(../images/background/bricks.jpg); background-repeat: no-repeat; padding: 5% 0;}
.shelf {background-image: url(../images/background/shelf.jpg); background-repeat: no-repeat; padding: 5% 0;}
.contact {background-image: url(../images/background/contact.jpg); background-repeat: no-repeat; padding: 5% 0;}
.greenbg {background-image: url(../images/background/bullseye.jpg); background-color: #65BC46; background-position: center;}
.green-diagonal {background-image: url(../images/background/green-diagonal.gif); background-position: center top; background-repeat: no-repeat;}
.cement {background-image: url(../images/background/cement.png); background-position: bottom right; background-repeat: no-repeat;}

.diagonal-grey-green {background-image: url(../images/background/diagonal-grey-green.jpg);  background-position: center bottom;}

.drawing {
background: url(../images/background/drawing.jpg) 0% 0 no-repeat fixed;
overflow: hidden;
height: 300px;
background-size:cover;
}

.circle {border-radius: 50%; padding: 20px;}

.fa-solid {color: #fff; margin-right: 5px;}

.tel {pointer-events: none; cursor: default; color:#000;/*SET COLOUR SAME AS MAIN TEXT*/}
.tel:hover {color:#000;/*SET COLOUR SAME AS MAIN TEXT*/}

.anchor{
  display: block;
  height: 115px; /*same height as header*/
  margin-top: -115px; /*same height as header*/
  visibility: hidden;
} /*PLEASE USE THIS CLASS ON ANCHOR LINKS WHEN THERE IS A STICKY MENU. NOT THE LINK THE TARGET*/}

/* Shrink */
.hvr-shrink {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-shrink:hover, .hvr-shrink:focus, .hvr-shrink:active {
  -webkit-transform: scale(0.9);
  transform: scale(0.9);
}

.smalltext, a.smalltext  {font-size: 14px; line-height: 1.5em; color: #000;}
a:hover.smalltext  {color: #000;}

/* Float */
.hvr-float {
  display: inline-block;
  vertical-align: middle;
	text-decoration: none;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-float:hover, .hvr-float:focus, .hvr-float:active {
  -webkit-transform: translateY(-8px);
  transform: translateY(-8px);
	text-decoration: none;
	
}

@media (max-width: 1520px) {
	h1 {font-size: 30px;  line-height: 40px;}
	
}
@media (max-width: 1200px) {
	#background-video {height: 50vh;}
}
@media (max-width: 992px) {
	h1 {font-size: 25px;  line-height: 35px;}
	h2 {font-size: 20px; line-height: 30px; }
	.builders {background-position: right; }
	.contentpad2 {padding: 20% 10%;}
	h3 {font-size: 28px; line-height: 30px;}
	.viewport-header {width: 60%;}
	.contentpad {padding: 50px 8%;}
	.contentpad2 {padding: 70px 10% 70px 5%;}
	.drawing {	
	height: 200px;
	}
	.cement {background-image: none;}
	h8 {font-size: 20px; line-height: 25px;}

}
@media (max-width: 767px) {
	.viewport-header {width: 100%;  padding: 10% 12% 0 5%;}
	
	h2 {font-size: 18px; line-height: 28px;}
	#background-video {height: 50vh;}
	.tel {pointer-events: auto; cursor: pointer; color:#000;/*SET COLOUR SAME AS MAIN TEXT*/}
}
/*#####################################################################################################################*/
/*FONT STYLES*/	
.bold {font-weight: bold;}
.italic {font-style: italic;}
.white {color: white;}
/*#####################################################################################################################*/
/*FONTS COLORS*/
.text-danger {color: #000;}
/*#####################################################################################################################*/
/*CONTACT FORM*/
.form-control {border-radius: 0px; color: #777; font-size: 13px;}
.form-control:focus {border-color: #65BC46; outline: 0; -webkit-box-shadow: inset 0 1px 1px rgba(101,188,70,.075), 0 0 8px rgba(101,188,70, .6); box-shadow: inset 0 1px 1px rgba(101,188,70,.075), 0 0 8px rgba(101,188,70, .6);}

.btn-primary {
  color: #fff !important;
  background-color: #65BC46;
  border: none;
  font-size: 15px;
  padding: 15px;
  border-radius: 30px;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  color: #fff;
   border: none;
   background-color: #65BC46;
}
.btn {border-radius: 0px;}
.loading-form {
    width: 47px;
    height: 39px;
    background-image: url(../images/ico/loading.gif);
    background-repeat: no-repeat;
}
/* Sweep To Bottom */
.hvr-sweep-to-bottom {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  border-radius: 30px;
}
.hvr-sweep-to-bottom:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #000;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50% 0;
  transform-origin: 50% 0;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  border-radius: 30px;
}
.hvr-sweep-to-bottom:hover, .hvr-sweep-to-bottom:focus, .hvr-sweep-to-bottom:active {
  color: white;
}
.hvr-sweep-to-bottom:hover:before, .hvr-sweep-to-bottom:focus:before, .hvr-sweep-to-bottom:active:before {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
}

/*#####################################################################################################################*/
/*FOOTER*/
.bot-bar {text-align:center; background-color: #3B4043; padding: 27px;}
.copytext {color: #fff; font-size: 13px; line-height: 1.2em; font-weight: normal; font-family: latoRegular, Verdana, Arial, helvetica, Calibri;}
.copytext a {color: #fff; font-size: 13px; padding: 0 5px 0 5px;}
.copytext a:hover {color: #000; text-decoration:none;}

a.copytext,a.copytext:visited {text-decoration: none; color: #fff;  font-size: 13px; outline: none; font-family: latoRegular, Verdana, Arial, helvetica, Calibri;}
a.copytext:hover,a.copytext:visited:hover {text-decoration: none; color: #000; outline: none;}
a.copyat, a.copyat:visited {text-decoration: none; color: #fff; outline: none; font-weight: normal;}
/*#####################################################################################################################*/
.clearfix:before, .clearfix:after { content: ""; display: table;}
.clearfix:after { clear: both;}
.clearfix { *zoom: 1;}