/*

Green: #017d47  1, 125, 71,
Red: #EC1B24
Light Grey: #e6e2de 230, 226, 222,


*/



















.service-box{
	border: 2px solid #017d47;
	padding-top: 30px !important;
	padding-bottom: 30px !important;
	padding-left: 5px !important;
	padding-right: 5px !important;

}

.homepage-rowbanner-text{
	padding-left: 30px !important;
	padding-right: 30px !important;
}



.fully-insured-font{
	color: #017d47;
	font-family: "Montserrat", sans-serif !important;
	font-weight: 800 !important;
	font-size: 20px !important;
	line-height: 21px !important;
	text-align: center !important;
	text-transform: uppercase !important;
}


.page-logo{
	position: fixed;
	height: 60px;
	width: 300px;
	top: 40px;
	left: 5%;
	z-index: 9;

}


.services-box-one{
	padding-top: 15px !important;
	padding-bottom: 1px !important;
	padding-left: 30px !important;
	padding-right: 30px !important;
	background: #017d47;
}
.services-box-two{
	padding-top: 15px !important;
	padding-bottom: 1px !important;
	padding-left: 30px !important;
	padding-right: 30px !important;
	background: #000;
}
.services-box-white{
	padding-top: 15px !important;
	padding-bottom: 1px !important;
	padding-left: 30px !important;
	padding-right: 30px !important;
	background: #ffffff;
	margin-bottom: 10px;
}

services-box-outer{
	padding-top: 5px !important;
	padding-bottom: 5px !important;
	padding-left: 5px !important;
	padding-right: 5px !important;
	background: #e6e2de;
	float: left !important;

}


.google-review {
 display: block;
  margin: 0 auto;
  text-indent: -9999px;
  width: 981px;
  height: 180px;
	background: url(../img/google-review.png) 100px 40px no-repeat center !important;


}

.facebook-review {
	height: 200px;
	width: 50px;
	background: url(../img/facebook-reviews.png) 100px 40px no-repeat center !important;
	text-align: center;

}




.call-block-text{
	position: fixed;
	top: 10px;
	right: 5%;
	color: #000;
	font-family: "Montserrat", sans-serif !important;
	font-weight: 400;
	font-size: 14px;
	z-index: 3;

}
.call-block-email{
	position: fixed;
	top: 60px;
	right: 5%;
	color: #000;
	font-family: "Montserrat", sans-serif !important;
	font-weight: 400;
	font-size: 14px;
	z-index: 3;

}

.home-view-projects{
	padding-top: 15px !important;
}




.services-text{
	padding-top: 15px !important;
	padding-bottom: 1px !important;
	padding-left: 30px !important;
	padding-right: 30px !important;
	background: #ffffff;
}
.review-logos{
	height: auto;
	width: 200px;
	margin-top: 0px !important;
	margin-bottom: 0px !important;
	padding-top: 0px !important;
	padding-bottom: 0px !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
}
.read-more-button{
	left: -8px !important;
	padding-top: 15px !important;
	padding-bottom: 15px !important;
	padding-left: 0px !important;
	padding-right: 5px !important;
}
.line-breaker{
	border-top: 1px solid white;
	width: 100%;
	padding: 0px !important;
	margin-bottom: 30px!important;
}

.view-button{
	border-radius: 50%;
	width: 80px;
	height: 80px;
	border: 3px solid white;
	display: block;
    margin: 0 auto;
    background: #017d47;
    position: absolute;
	top: 30px;
    left: 30px;
	cursor: hand !important;
}
.view-button:hover{
	background: #e6e2de;
	cursor: hand !important;

}
.view-text{
	text-align: center;
	padding-top: 25px;
	color: white;
}


.content-outer-reviews{
	background:	#e6e2de;
	width: 100%;
	padding-top: 60px !important;
	padding-bottom: 60px !important;
	padding-left: 0px !important;
	padding-right: 0px !important;
	margin-top: 0px  !important;
	margin-bottom: 30px  !important;
}


.content-outer-white{
	background:	white;
	width: 100%;
	padding-top: 60px !important;
	padding-bottom: 60px !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
	margin-top: 0px  !important;
	margin-bottom: 0px  !important;
}
.painting-border{
	padding-top: 20px !important;
	padding-bottom: 20px !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
	background: white;
}


 /* MAP ............................................................................ */
.map-padding {
	padding: 0px 0px 0px 0px !important;
	margin: 0px 0px 0px 0px !important;
}
.feature.map {
  height: 100%;
}
.feature.map iframe {
	 opacity: 1.0;
  height: 450px;
  width: 100%;
  border: 0;
  filter: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='grayscale'><feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0'/></filter></svg>#grayscale");
  /* Firefox 10+ */
  filter: gray;
  /* IE6-9 */
  -webkit-filter: grayscale(0%);
  /* Chrome 19+ & Safari 6+ */
  -webkit-backface-visibility: hidden;
  /* Fix for transition flickering */
}
/* END MAP ............................................................................ */




/* REVIEWS parent and child pages  ........................................... */
.revwid-container .revwid-box {
    background: #ffffff !important;
    font-size: 14px !important;
    line-height: 1.7 !important;
    border: 1px solid #e3e3e3 !important;
    padding: 30px !important;
    border-radius: 4px !important;
    box-sizing: border-box !important;
    position: relative !important;
}

.star-text{
	position: absolute;
    top: 4px;
    left: 19px;
    font-size: 10px !important;
}

.rating-page-box-outer{
	padding-top: 0px !important;
	padding-left: 15px !important;
	padding-right: 15px !important;
	padding-bottom: 0px !important;
	margin-bottom: 40px !important;
}

.rating-page-box{
	padding: 15px 20px 45px 10px !important;
    border: 1px solid white;
    background: white;
    border-radius: 10px;
    margin-bottom: 40px !important;
}
.quote-page-review{
	padding-top: 0px !important;
    padding-bottom: 10px !important;
    padding-left: 30px !important;
    padding-right: 0px !important;
}
.clients-name{
    position: relative;
    top: -3px;
}
.quote-message{
    padding-top: 0px !important;
}
.testimonials-tri {
    position: relative;
    top: 90px;
    left: 13px;
    width: 0;
    height: 0;
    border-left: 0px solid transparent;
    border-right: 40px solid transparent;
    border-top: 40px solid #fff;
}
.rating-background{
    padding-top: 20px !important;
    padding-bottom: 20px !important;
    padding-left: 20px !important;
    padding-right: 0px !important;
}
.star-icon-small{
	display: inline-block !important;
    width: 20px  !important;
	top: 5px;
    position: relative;
    height: 20px;
    padding-left: 0px !important;
    padding-bottom: 0px !important;
    padding-top: 0px !important;
    padding-right: 0px !important;
    margin-left: 0px !important;
}
.rating-single-page-box{
	top: 20px;
	padding-top: 20px !important;
    padding-bottom: 20px !important;
    padding-left: 0px !important;
    padding-right: 20px !important;
    border: 8px solid #F3F1ED;
    background: white;
    border-radius: 15px;
    margin-bottom: 33px !important;
    background: white;
}
.clients-name{
    position: relative;
    top: 15px;
}
.quote-message{
    padding-top: 0px !important;
}
/* END REVIEWS parent and child pages  ................... */










 /* Home page subject image .................................................................................. */
.subject-tilte{
	text-align: center;
	font-family: "Montserrat", sans-serif !important;
	font-weight: 400;
	font-size: 40px;
	line-height: 50px !important;
	letter-spacing: 0px !important;
	color: white;
}

.case-study-title{
	text-align: center;
	font-family: "Montserrat", sans-serif !important;
	font-weight: 600;
	font-size: 30px;
	line-height: 35px !important;
	letter-spacing: 0px !important;
	color: white;

}

.small-case-study-title{
	position: absolute;
    bottom: 0px;
	text-align: left !important;
	font-family: "Montserrat", sans-serif !important;
	font-weight: 600;
	font-size: 10px;
	line-height: 11px !important;
	letter-spacing: 0px !important;
	color: white;
	background-color: rgba(0, 0, 0, 0.6);
	padding: 5px !important;
}

.case-study-sub-title{
	text-align: center;
	font-family: "Montserrat", sans-serif !important;
	font-weight: 600;
	font-size: 20px;
	line-height: 25px !important;
	letter-spacing: 0px !important;
	color: white;
}

.subject-homepage-text{
	display: block;
	margin-top: 30px !important;
	margin-padding: 30px !important;
}
.subjectoverlay{
	display: block;
	width: 100%;
	height: 400px;
	background-color: rgba(0, 0, 0, 0.2)
}
.case-sudy-subjectoverlay{
	display: block;
	width: 100%;
	height: 250px;
	background-color: rgba(0, 0, 0, 0.5)
}
.text-area-sub {
	white-space: wrap;
	text-align: center;
	position: absolute;
	overflow: hidden;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}
.subject-outer{
	padding: 5px 5px 5px 5px !important;
	width: 100%;
}
.subject-inner{
	height: auto;
	width: 100%;
	background: white;
	padding: 0px 0px 0px 0px !important;
	border: 3px solid white;
}
.subject-image {
	display: block;
	width: 100%;
	height: 150px;
}
.service-image {
	display: block;
	width: 100%;
	height: 400px;
}
.case-study-image{
	width: 100%;
	height: 250px;
}

.gallery-thumb-image {
	display: block;
	width: 100%;
	height: 200px;
}
.box-post-sub-up{
	position: relative;
	width: 100%;
}
.box-post-sub-up:hover .overlay-sub-up {
	height: 100%;
}

/* After Box .. */
.overlay-sub-up {
	z-index: 2;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: rgba(1, 125, 71, 1.0);
	overflow: hidden;
	width: 100%;
	height: 0;
	transition: .5s ease;
}
 /* END Home page subject image .................................................................................. */










.white-box{
  padding: 0px 0px 0px 0px !important;
  border: 1px white solid;
}
.buy-ticket{
	margin-top: 30px !important;
}








 /* VIDEO ................................................................ */
.video-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 0px;
    height: 0;
    overflow: hidden;
    margin: 0px 0px 15px 0px !important;
}
.video-container iframe,
.video-container object,
.video-container embed {
    position: absolute;
    bottom: 0 !important;
    left: 0;
    width: 100%;
    height: 100%;
}
 /* END VIDEO ................................................................ */



















/* Box up.. */
.box-post-up{
  position: relative;
  width: 100%;
}
.box-post-up:hover .overlay-up {
  height: 100%;
}
/* After Box .. */
.overlay-up {
	z-index: 2;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: rgba(89, 121, 52, 0.8);
  overflow: hidden;
  width: 100%;
  height: 0;
  transition: .5s ease;
}
.text-area {
  white-space: wrap;
  text-align: center;
  position: absolute;
  overflow: hidden;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.text-area-outer {
	padding-top: 10px !important;
	padding-bottom: 20px !important;
	padding-left: 0px !important;
	padding-right: 0px !important;
}
.homepage-service-outer{
  padding: 0px !important;
  margin: 0px !important;
  border: 8px solid #eceae5 !important;
  float: left !important;
  background: white;
}
.about-title{
    margin-bottom: 50px !important;;
}
.space-thity{
	padding-top: 15px !important;;
    padding-bottom: 15px !important;;
}


 /* NEW Footer................................................................................................ */
.message-banner{
    padding-top: 65px;
    padding-bottom: 40px;
    padding-left: 30px !important;
    padding-right: 30px !important;
    background: #017d47;
}
.getintouch-block{
	background:	#333333;
	width: 100%;
	padding-top: 25px !important;
	padding-bottom: 25px !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
	margin-top: 0px  !important;
	margin-bottom: 0px  !important;
}
.footer-contact-text{
	text-align: left !important;
	color: white !important;
	margin: -10px 0px 16px 0px !important;
}
.footer-title-text{
	font-family: "Montserrat", sans-serif !important;
	font-weight: 500;
	color: #333;
	font-size: 14px;
	line-height: 16px;
	font-weight: 800;
	text-transform: uppercase;
	text-align: left !important;
	color: white !important;
	padding: 0px 0px 0px 0px !important;
	margin: 0px 0px 0px 0px !important;
}
.footer-icon-text-border{
	width: 100%;
	height: auto;
	padding-top: 0px !important;
	padding-left: 0px !important;
	padding-right: 0px !important;
	padding-bottom: 5px !important;
	margin-top: 0px !important;
	margin-bottom: 1px !important;
}
.footer-box-top{
	margin-top: 20px;
	padding-top: 30px;
	border-top: 1px dotted white;
}
.foot-link-pointer{
	color: white !important;
}
.footer-icon{
	float: left;
	height: 32px;
	padding-left: 0px !important;
	padding-right: 15px !important;
	margin-left: 0px !important;
}
.footer-icon-text-block{
	float: left;
	text-align: left !important;
	width: 70%;
	color: white !important;
	padding-top: 1px;
}
.footer-icon-text-top-block{
	 position: relative;
    top: -12px;
	float: left;
	text-align: left;
	width: 70%;
	color: white !important;
	padding-top: 0px !important;
}
.footer-text-comma{
	padding-right: 3px !important;
}
.footer-tel-text-border{
	width: 100%;
	height: auto;
	padding-top: 0px !important;
	padding-left: 0px !important;
	padding-right: 0px !important;
	padding-bottom: 5px !important;
	margin-top: 0px !important;
	margin-bottom: 10px !important;
}
.call-hover-footer{
	text-align: left  !important;

	letter-spacing: -1px !important;
    color: white !important;
}
.call-hover-footer:hover{
    color: grey !important;
}
.white-text-link{
    color: white !important;
}
.white-text-link:hover{
    color: pink !important;
}
.footer-text{
	font-size: 14px;
	line-height: 17px;
}
 /* END Footer..................................................................................................... */







/* Homepage Main Banner ......................................... */

.mainbanner-text-box{
	padding-top: 15px !important;
	padding-bottom: 15px !important;
	padding-left: 30px !important;
	padding-right: 30px !important;
	position: absolute;
	top: 250px;
	z-index: 1;
	width: 100%;
}



.homepage-header-image {
	display:flex;
	align-items: center;
	justify-content: center;

	background-size: 120%;
		animation-name: zoom;
		animation-duration: 40s;
		animation-iteration-count: infinite;
		animation-timing-function: linear;

}
.mainbanner{
	z-index: 0;
	position: relative;
	padding: 0px 0px 0px 0px !important;
	margin: 0px 0px 0px 0px !important;
}

.homepage-overlay{
	width: 100%;
	padding: 0px !important;
	position: absolute;
	left: 0;
	top: 0px;
	background-color: rgba(0, 0, 0, 0.0) !important;
}

.home-intro-text{
	margin-top: 10px;
}
.homepage-subject-titles{
	position: relative;
	top: 15px;
	color: #017d47;
	text-transform: lowercase;
	font-weight: 400 !important;
	font-size: 20px !important;
}
/* END Homepage Main Banner ......................................... */


 /* Homepage welcome text banner  .................................................................................. */


.welcome-text-outer-box{
	padding-top: 25px !important;
}
.creative-padding{
	padding-top: 0px !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
	padding-bottom: 0px !important;
}
 /* END Homepage welcome text banner  .................................................................................. */















 /* Buttons........................................ */
button, .button {
	border-width: 1px !important;
	border-color: white !important;
	padding-top: 8px !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
	padding-bottom: 10px !important;
	margin-bottom: 5px !important;
}
button {
	font-family: "Montserrat", sans-serif !important;
	font-weight: 700 !important;
	font-size: 12px !important;
    background-color: #EC1B24 !important;
	border-radius: 30px !important;
    transition: all .5s ease-in-out;
}
button:hover {
    background-color: #017d47  !important;
    transition: all .5s ease-in-out;
}
button:active{
    background-color: #017d47 !important;
}
button.active {
    background-color: #017d47 !important;
}
 /* END Buttons......................................... */


/* Cookies css ..................................................  */
.cc_b_cp{
    background: #333333  !important;
    color: white !important;
    margin-bottom: 0rem !important;
    margin-top: 0.2rem !important;
}
.cc_b_ok{
	background: #333333 !important;
    color: white !important;
    margin-bottom: 0rem !important;
    margin-top: 0.2rem !important;
}
.cc_dialog button.cc_b_cp {
    margin-bottom: 0rem !important;
   margin-top: 0.2rem !important;
}
/* END Cookies css ..................................................  */


 /* Ninja form .................................................. */
.nf-form-content .list-select-wrap .nf-field-element>div, .nf-form-content input:not([type=button]), .nf-form-content textarea {
    background: white !important;
    border: 2px solid #e6e2de !important;
    border-radius: 5px !important;
    box-shadow: none;
    color: #333333 !important;
    transition: all .5s;
}
.nf-form-fields-required{
    display: none !important;
}
.nf-form-content {
    padding: 0px !important;
    max-width: 1000px;
    margin: 0 auto;
}
.nf-field-container{
    padding-top: 2px !important;
    padding-bottom: 2px !important;
    padding-right: 10px !important;
    margin: 0px !important;
}
.nf-form-content input[type=button] {
	border-radius: 5px !important;
    background: #017d47 !important;
    color: #fff !important;
}
.nf-form-content input[type=button]:hover {
    background: #017d47 !important;
    color: #fff !important;
}
.hr-container{
    padding-top: 20px !important;
    padding-bottom: 20px !important;
    padding-right: 25px !important;
    color: #fff !important;
}
.nf-form-content label {
	font-family: "Montserrat", sans-serif !important;
    color: color: #017d47; !important;
    font-size: 15px !important;
    line-height: 18px !important;
}
.nf-form-content textarea.ninja-forms-field {
    height: 150px !important;
    padding-top: 20px !important;
    padding-bottom: 20px !important;
    padding-right: 25px !important;
    margin-bottom: 20px !important;
}
.nf-after-field .nf-error-msg {
    margin-right: 10px;
    display: none !important;
}
.field-wrap checkbox-wrap{
    width: 10% !important;
    float: left !important;
}
.checkbox-container.label-hidden label:after {
    left: 0;
    bottom: 0;
    visibility: visible;
}
.nf-field-description{
	position: absolute;
	top: -20px !important;
	left: 30px !important;
    width: 80% !important;
    float: left !important;
}
.nf-response-msg{
	font-family: "Montserrat", sans-serif !important;
    color: #017d47 !important;
	font-weight: 800 !important;
    font-size: 30px !important;
	text-align: center !important;
    background: white;
    padding-top: 40px;
    padding-bottom: 30px;
    padding-left: 30px;
    padding-right: 30px;
    margin-top: 20px !important;
}

..ninja-forms-form-wrap *, .ninja-forms-form-wrap :after, .ninja-forms-form-wrap :before{
	font-family: "Montserrat", sans-serif !important;
	font-weight: 800 !important;
    font-size: 20px !important;


}



.nf-form-content input[type=button]:hover {
    background: grey !important;
}
 /* Text placeholder text.... */
::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: black  !important;
  	font-weight: 400 !important;
}
::-moz-placeholder { /* Firefox 19+ */
  color: black  !important;
  	font-weight: 400 !important;
}
:-ms-input-placeholder { /* IE 10+ */
  color: black  !important;
  	font-weight: 400 !important;
}
:-moz-placeholder { /* Firefox 18- */
  color: black  !important;
  	font-weight: 400 !important;
}
 /* END Ninja form ................................................... */






/* Social Meida Block ............................... */

.social-media-homepage-banner{
	top:529px;
	position: absolute;
	z-index: 3;
	text-align: right !important;
	float: right !important;
}
.socialmedia-homepage-icons{
	text-align: center !important;
	padding-top: 0px !important;
	padding-bottom: 0px !important;
}
.socialmedia-icon-svg-page{
    background: #017d47;
    width: 40px !important;
    height: 40px !important;
    border-radius: 30px;
    transition: all .5s ease-in-out;
}
.socialmedia-icon-svg-page:hover{
	background: #333333;
    width: 40px !important;
    height: 40px !important;
    border-radius: 30px;
   transform: scale(1.2);
}
.socialmedia-icons-page{
	padding-top: 0px !important;
	padding-bottom: 0px !important;
	margin-top: -18px !important;
}
.postage-details{
	padding-top: 30px !important;
	padding-bottom: 30px !important;
}
.socialmedia-icons{
	text-align: center !important;
	padding-top: 0px !important;
	padding-bottom: 0px !important;
}
.socialmedia-icons-spacing{
	color: #fff !important;
	display: inline-block;
    width: 60px !important;
	line-height: 23px !important;
	margin-top: 10px !important;
	margin-bottom: 10px !important;
	margin-right: 5px;
}
.social-media-banner{
	width: 100%;
}
.socialmedia-icons-font{
    font-size: 12px !important;
	text-align: center !important;
	margin-bottom: 5px !important;
}
/* END Social Media Block ............................... */





/* Slick................................................................................. */
    html, body {
      margin: 0;
      padding: 0;
    }
	 .slick-slide {
	 height: auto   !important;
	 }
    * {
      box-sizing: border-box;
    }
    .slider {
        width: 50%;
        margin: 100px auto;
    }
    .slick-slide {
      margin: 0px 0px 0px 0px;
    }
    .slick-slide img {
	  width: 100%;
    }
    .slick-slide {
      transition: all ease-in-out .3s;
      opacity: none !important;
    }
    .slick-active {
      opacity: none !important;
    }
    .slick-current {
      opacity: none !important;
    }

.slick-next {
    right: -50px !important;
    height: 40px !important;
    padding: 2px !important;
}
.slick-prev {
    left: -50px !important;
    height: 42px !important;
    padding: 2px !important;
}

.slick-prev:before, .slick-next:before {
	font-family: FontAwesome !important;
	font-size: 15px !important;
	line-height: 1.5 !important;
	color: color: #017d47; !important;
	opacity: 0.9 !important;
	-webkit-font-smoothing: antialiased !important;
	-moz-osx-font-smoothing: grayscale !important;
}
.slick-arrow {
	border-radius: 50% !important;
	border: 0px #D9D6CC solid !important;
    background-color: #333333 !important;
}
.slick-arrow:hover {
 opacity: 0.9 !important;
}
.slick-prev:before {
	content: "\f053" !important;
}
[dir="rtl"]
.slick-prev:before {
	content: "\f054" !important;
}
[dir="rtl"]
.slick-next {
	left: -10px !important;
	top: 70px !important;
	right: auto !important;
}
.slick-next:before {
	content: "\f054" !important;
}
[dir="rtl"]
.slick-next:before {
	content: "\f053" !important;
}
.slick-dots {
    position: absolute;
    bottom: -40px !important;
    display: block;
    width: 100%;
    margin: 0;
    list-style: none;
    text-align: center !important;

}
.slick-dots li button:before{
    font-size: 0px !important;
    position: absolute;
    top: 0;
    left: 0;
    width: 20px !important;
    height: 20px !important;
    content: '•';
    text-align: center;
    opacity: 0.9 !important;
    color: red !important;
    border: 3px solid #fff;
}
.slick-dots li.slick-active button:before{
    opacity: 0.9 !important;
}
.slick-dots li.slick-active button:before{
    background-color: #333333 !important;
}
.slick-dots li button:hover{
    opacity: 0.9 !important;
}
.slick-dots li button::before{
    color: #0fab7a !important;
}
/* END Slick................................................................................. */




ul {
    margin-left: 2.25rem;
    list-style-type: disc;
}







/* Typography .................................................. */
h1 {
	font-family: "Montserrat", sans-serif !important;
	font-weight: 700;
	font-size: 34px;
	line-height: 39px;
	letter-spacing: 0px !important;
	color: #017d47;
}
h1 .light {
	font-weight: 400;
}
h2 {
	font-family: "Montserrat", sans-serif !important;
	font-weight: 700;
	font-size: 30px;
	line-height: 35px;
	color: #333;
}
h3 {
	font-family: "Montserrat", sans-serif !important;
	font-weight: 600;
	font-size: 16px;
	line-height: 25px !important;
	color: #333;
}
h4 {
	font-family: "Montserrat", sans-serif !important;
	font-weight: 600;
	font-size:24x;
	line-height: 25px !important;
	color: #333;
	text-transform: uppercase !important;
}

p {
	font-family: "Montserrat", sans-serif !important;
	font-weight: 500;
	color: #333;
	font-size: 14px;
	line-height: 25px;
}
li {
	font-family: "Montserrat", sans-serif !important;
	font-weight: 400;
	color: #333;
	font-size: 14px;
	line-height: 20px;
}
hr {
	color: #017d47;
	border-top: 1px dotted !important;
	border-left: 0;
	border-right: 0;
	border-bottom: 0;
	margin: 5x 5px 5px 5px !important;
}





/* Colours .............................................................................. */
/* unvisited link */
a:link {
    text-decoration: none;
    color: #017d47;
}
/* visited link */
a:visited {
	color: #333333;
}
/* mouse over link */
a:hover {
  color: red;
}
/* selected link */
a:active {
	color: #333333;
}
a{
	text-decoration: none;
}

.contact-page-outer	{
	padding-top: 60px;
	padding-bottom: 40px;
    padding-left: 10% !important;
    padding-right: 10% !important;
    background-color: rgba(230, 226, 222, 1.0);
    height: auto;
}
.contact-page-address-outer	{
	padding-top: 60px;
	padding-bottom: 40px;
    padding-left: 10% !important;
    padding-right: 10% !important;
    background: rgba(230, 226, 222, 0.0);
    height: auto;
}

.line{
	border-top: 1px solid #e6e2de;
	margin-top: 30px;
	margin-bottom: 30px;
	width: 100%;
}
/* Gallery  ......................................... */




















/* END Gallery  ......................................... */















/* Gallery ........................................... */

.content-gallery-outer{
	background:	#e6e2de;
	width: 100%;
}
.gallery-outer{
	float: left !important;
	padding-top: 5px !important;
	padding-bottom: 5px !important;
	padding-left: 5px !important;
	padding-right: 5px !important;
	height: auto;
}

.gallery-inner{
	float: left !important;
	background:	white;
	border: 2px #e6e2de solid;
	padding-top: 15px !important;
	padding-bottom: 15px !important;
	padding-left: 15px !important;
	padding-right: 15px !important;
	margin-bottom: 30px !important;

}
.gallery-image{
	height: auto;
	float: left !important;
	opacity: 1.0;
	transition: all .5s ease-in-out;
	margin-bottom: 0px !important;
	border: 7px solid rgb(230, 226, 222);
}
.gallery-image:hover{
	opacity: 0.1;
	background:	pink;
	transition: all .5s ease-in-out;
}



.number{
	position: absolute;
    top: 0px;
    text-align: center;
    width: 100%;
    color: #ffffff;
    background: rgb(0, 0, 0, 0.3);
    padding-top: 18px !important;
    padding-bottom: 19px;
}
.caption{
	position: relative;
	top: 10px;
	float: left;
	color: #ffffff;
}
.case-study-subject-image {
	width: 100%;
	height: 250px;
	border: 6px solid #e6e2de;
}
.case-study-subject-image:hover {
	opacity: 0.5;
}
.gallery-image-outer{
	border: 10px solid #fff;
	padding-margin: 15px;
	padding-margin: 15px;
	width: 100%;
}
.modal {
  display: none;
  position: fixed;
  z-index: 7;
  padding-left: 20px;
  padding-right: 20px;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.8);
}
.modal-content {
  position: relative;
  margin: auto;
  padding: 0px;
  max-width: 1200px;
}
.close {
	padding-top: 5px;
	padding-bottom: 12px;
	padding-left: 15px;
	padding-right: 15px;
	cursor: pointer;
	z-index: 5;
	position: absolute;
	border-radius: 50%;
	color: white;
	top: 16px;
	right: 17px;
	font-size: 35px;
	line-height: 35px;
	font-weight: bold;
	background: #017d47 !important;
}
.close:hover,
.close:focus {
  color: #fff;
  background: #EC1B24 !important;
  text-decoration: none;
  cursor: pointer;
}
.mySlides {
  display: none;
  text-align: center !important;
}
.prev,
.next {
  cursor: pointer;
  position: absolute;
  top: 50px;
  width: auto;
  padding: 16px;
  margin-top: -50px;
  color: white;
  background: #017d47;
  font-weight: bold;
  font-size: 20px;
  transition: 0.6s ease;
  border-radius: 0 3px 3px 0;
  user-select: none;
  -webkit-user-select: none;
}
.next {
  right: 0;
  border-radius: 3px 0 0 3px;
}
.prev.prev {
    left: 0px;
}
.prev:hover,
.next:hover {
  background-color: rgba(0, 0, 0, 0.8);
}
.numbertext {
  color: #f2f2f2;
  font-size: 12px;
  padding: 8px 12px;
  position: absolute;
  top: 0;
}
/* Add Animation - Zoom in the Modal */
.modal-content, #caption {
  animation-name: zoomy;
  animation-duration: 0.6s;
}
@keyframes zoomy {
  from {transform:scale(0)}
  to {transform:scale(1)}
}



/* Desktop Gallery... */
@media only screen and (min-width: 1031px) {

	.gallery-image{
		width: 33%;
	}

	.content-gallery-outer{
		padding-top: 60px !important;
		padding-bottom: 60px !important;
		padding-left: 20px !important;
		padding-right: 20px !important;
		margin-top: 0px  !important;
		margin-bottom: 0px  !important;
	}

/* mobile Gallery... */

}
@media only screen and (max-width: 1030px) {
	.gallery-image{
		width: 50%;
	}

	.content-gallery-outer{
		padding-top: 0px !important;
		padding-bottom: 60px !important;
		padding-left: 20px !important;
		padding-right: 20px !important;
		margin-top: 0px  !important;
		margin-bottom: 0px  !important;
	}



}
/* END Gallery ........................................... */









/* DESKTOP ..................................................................................................................... */
@media only screen and (min-width: 1031px) {
	.callnow{
	    background: #EC1B24;
	    width: 35px !important;
	    height: 35px !important;
	    border-radius: 30px;
	    transition: all .5s ease-in-out;
	}
	.emailnow{
	    background: #EC1B24;
	    width: 35px !important;
	    height: 35px !important;
	    border-radius: 30px;
	    transition: all .5s ease-in-out;
	}

	.hs-box{
		background: white;
		padding-top: 15px !important;
		padding-bottom: 15px !important;
		padding-left: 15px;
		padding-right: 15px !important;
		margin-bottom: 10px!important;
	}




	.services-text-page{
		width: 100%;
		padding-top: 30px !important;
		padding-bottom: 30px !important;
		padding-left: 60px !important;
		padding-right: 60px !important;
		background: #ffffff;
	}

	.services-text-page-white{
		width: 100%;
		padding-top: 0px !important;
		padding-bottom: 30px !important;
		padding-left: 60px !important;
		padding-right: 60px !important;
		background: #ffffff;
	}


	.fully-insured-message{
		position: fixed;
		height: 60px;
		width: 300px;
		top: 17px;
		left: 5%;
		z-index: 1;
		border: #0E7D46 3px solid;
		padding-top: 5px !important;

	}



	.list-text {
		font-family: "Montserrat", sans-serif !important;
		font-weight: 600;
		color: #017d47;
		font-size: 16px;
		line-height: 11px;
		text-align: center;

	}



	.accreditations{
		text-align: center !important;
		height: auto;
		width: 200px;
		margin-top: 0px !important;
		margin-bottom: 0px !important;
		padding-top: 0px !important;
		padding-bottom: 0px !important;
		padding-left: 0px !important;
		padding-right: 0px !important;
	}

	.accreditations-block{
		text-align: center !important;
	}





	.content-outer{
		background:	#e6e2de;
		width: 100%;
		padding-top: 60px !important;
		padding-bottom: 60px !important;
		padding-left: 20px !important;
		padding-right: 20px !important;
		margin-top: 0px  !important;
		margin-bottom: 0px  !important;
	}




	.review-text-box{
		height: 350px;
		position: relative;
		bottom: 0px !important;
		padding-top: 210px !important;
		padding-left: 30px !important;
		padding-right: 30px !important;
		background-color: rgba(1, 125, 71, 0.0);
	}




	.call-block{
		position: fixed;
		top: 23px;
		right: 5%;
		color: #017d47;
		font-family: "Montserrat", sans-serif !important;
		font-weight: 700;
		font-size: 30px;
		z-index: 3;

	}



	.content-outer-service{
		background:	#e6e2de;
		width: 100%;
		height: auto;
		padding-top: 60px !important;
		padding-bottom: 60px !important;
		padding-left: 0px !important;
		padding-right: 0px !important;
		margin-top: 0px  !important;
		margin-bottom: 0px  !important;
	}

	.content-outer-service-white{
		background:	#ffffff;
		width: 100%;
		padding-top: 60px !important;
		padding-bottom: 60px !important;
		padding-left: 0px !important;
		padding-right: 0px !important;
		margin-top: 0px  !important;
		margin-bottom: 0px  !important;
	}

	.parallax-text-box{
		padding-top: 200px !important;
		padding-bottom: 200px !important;
		padding-left: 90px !important;
		padding-right: 90px !important;
		background-color: rgba(1, 125, 71, 0.0);
	}



	.modal {
	 	padding-top: 100px;

	}


	@keyframes zoom {
	    0% {
	        transform: scale(1,1);
	    }
	    50% {
	        transform: scale(1.2,1.2);
	    }
	    100% {
	        transform: scale(1,1);
	    }
	}



	.about-image-padding{
		padding-top: 50px !important;
	}



	.left-padding{
		padding-left: 60px !important;
	}





	.box-image-product {
	  display: block;
	  width: 100%;
	  height: 310px;
	  border: 1px solid white;
	}
	.box-image-square {
	  display: block;
	  width: 100%;
	  height: 470px;
	  border: 1px solid white;
	}



	.art-wards-image{
		float: left;
	}
	.art-wards-block{
		padding-top: 0px !important;
		padding-bottom: 20px !important;
		padding-left: 0px !important;
		padding-right: 30px !important;
	}
	.single-page-morephotos{
		border-right: 30px solid white;
		float: left !important;
		padding: 0px !important;
		height: 200px;
	}
	.single-news-image{
		border: 0px white solid;
		width: 60%;
	    padding-top: 0px !important;
	    padding-bottom: 0px !important;
	    padding-left: 0px !important;
	    padding-right: 0px !important;
	    margin-bottom: 30px !important;
	    background: white;
	    box-shadow: 5px 5px 5px #888;
	    display: block;
	    margin: 0 auto;
	}

	/* Homepage Main Banner ....... */
	.home-welcome-banner{
	    background: #017d47;
	    padding-top: 40px !important;
	    padding-bottom: 40px !important;
		padding-left: 10% !important;
		padding-right: 10% !important;
	}

	.home-choose-banner{
	    background: #ffffff;
	    padding-top: 60px !important;
	    padding-bottom: 60px !important;
		padding-left: 10% !important;
		padding-right: 10% !important;
	}
	.portfolio-page-outer{
	    margin-bottom: 50px !important;;
	    padding-left: 10% !important;;
	    padding-right: 10% !important;;
	}



	.homepage-header-image {
		margin-top: 0px !important;
		margin-bottom: 0px !important;
		height: 450px;
	}

	.reviews-image {
		height: 420px;
		  -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
		  filter: grayscale(100%);
	}

	.mainbanner{
		height: 450px !important;
	}
	.homepage-overlay{
		display: none;
	}
	.parallax-block{
		padding-top: 0px !important;
		padding-bottom: 0px !important;
		position: relative;
		height: auto;
		background:	white;
	}


	.article-page {
		height: 160px;
	}
	.homepage-row-one{
		background: #e6e2de;
		padding-top: 36px !important;
		padding-bottom: 36px !important;
	    padding-left: 10% !important;
	    padding-right: 10% !important;
	}
	.homepage-service-one{
		height: auto;
		background: #e6e2de;
		padding-top: 0px !important;
		padding-bottom: 0px !important;
	    padding-left: 10% !important;
	    padding-right: 10% !important;
	}

	.page-service-one{
		background: #fff;
		padding-top: 40px !important;
		padding-bottom: 40px !important;
	    padding-left: 10% !important;
	    padding-right: 10% !important;
	}

	.homepage-service-two{
		background: #ffffff;
		padding-top: 0px !important;
		padding-bottom: 0px !important;
	    padding-left: 10% !important;
	    padding-right: 10% !important;
	}

	.page-heading-padding {
	    padding-top: 40px !important;
	    padding-bottom: 80px !important;
	    padding-left: 10% !important;
	    padding-right: 10% !important;
	    background: white;
	}
	.singlepages-banner {
		height: auto;
	    padding-top: 155px !important;
	    padding-bottom: 30px !important;
	    padding-left: 10% !important;
	    padding-right: 10% !important;
	    background: white;
	}


	.singlepages-banner-green {
		height: auto;
	    padding-top: 155px !important;
	    padding-bottom: 30px !important;
	    padding-left: 10% !important;
	    padding-right: 10% !important;
	    background: #017d47;
	}


	.servicespages-banner {
		height: auto;
	    padding-top: 155px !important;
	    padding-bottom: 30px !important;
	    padding-left: 10% !important;
	    padding-right: 10% !important;
	    background: white;
	}
	.servicescontent-banner {
		background: #e6e2de;
		padding-top: 50px !important;
		padding-bottom: 40px !important;
	    padding-left: 100px !important;
	    padding-right: 100px !important;
	}

	.reviewspages-background {
		height: auto;
	    padding-top: 0px !important;
	    padding-bottom: 40px !important;
	    padding-left: 10% !important;
	    padding-right: 10% !important;
	}
	.aboutpages-banner {
		height: auto;
	    padding-top: 30px !important;
	    padding-bottom: 30px !important;
	    padding-left: 10% !important;
	    padding-right: 10% !important;
	    background: white;
	}

	.menu-outer{
	    margin-bottom: 0px !important
	}

	header{
		padding-right: 0px !important;
		padding-left: 0px !important;
	}
	.header-solid{
		padding-right: 0px !important;
		padding-left: 0px !important;
	}
	.header-page{
		padding-right: 0px !important;
		padding-left: 0px !important;
	}
	/* homepage logo .......... */




	/* Menu Home background BANNER (desktop and Mobile) ....................................... */
	header{
		z-index: 2;
		display: block;
		padding-top: 0px !important;
		padding-bottom: 0px !important;
		height: 90px;
		width: 100%;
		position: fixed;
		background: rgba(256, 256, 256);
		left: 0;
		-webkit-transition: all 0.3s ease-in-out;
		-moz-transition: all 0.3s ease-in-out;
		-o-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;

	}
	.header-solid{
		display: block;
		padding-top: 0px !important;
		padding-bottom: 0px !important;
		height: 90px;
		width: 100%;
		position: fixed;
		background: rgba(256, 256, 256, 0.9);
		-webkit-transition: all 0.3s ease-in-out;
		-moz-transition: all 0.3s ease-in-out;
		-o-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
	}
	.header-page{
		display: block;
		padding-top: 0px !important;
		padding-bottom: 0px !important;
		height: 90px;
		width: 100%;
		position: fixed;
		background: rgba(0, 0, 0, 0.9);
		z-index: 2;
		-webkit-transition: all 0.3s ease-in-out;
		-moz-transition: all 0.3s ease-in-out;
		-o-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
	}
	/* END Menu Home background banner ............................................................... */





	.menu-banner{
		text-align: center !important;
		left: 0;
		display: block;
		position: fixed;
		top: 90px;
		width: 100%;
		background: black;
		z-index: 7;
	}






	header .header-message{
		padding-left: 5px !important;
		padding-right: 5px !important;
		width: 100%;
		text-align: center !important;
		position: fixed;
		left: 0px;
		height: 40px;
		top: 17px;
		z-index: 9;
		-webkit-transition: all 0.3s ease-in-out;
		-moz-transition: all 0.3s ease-in-out;
		-o-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
	}

	.header-solid .header-message{
		width: 100%;
		position: fixed;
		left: 0px;
		height: 40px;
		top: -100px;
		z-index: 9;
		-webkit-transition: all 0.3s ease-in-out;
		-moz-transition: all 0.3s ease-in-out;
		-o-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;

	}

	.header-message-font{
		color: #000;
		font-family: "Montserrat", sans-serif !important;
		font-weight: 800 !important;
		font-size: 19px !important;
		line-height: 19px !important;
		text-align: center !important;
		text-transform: uppercase !important;
	}


















	.desklogo{
		z-index: 9;
	}
	header .desklogo {
		height: 244px;
		width: 571px;
		background: url(../img/logo.png) no-repeat center !important;
		background-size: contain !important;
		z-index: 7;
		top: 162px;
		text-align: center;
	  	position: relative;
	  	left: 48%;
		   -webkit-transition: all 0.4s ease;
		    transition: all 0.4s ease;
		    -webkit-transform: translateX(-50%);
		    -ms-transform: translateX(-50%);
		    transform: translateX(-50%);
	}
	.header-solid .desklogo {
		height: 89px;
		width: 203px;
		background: url(../img/logo.png) no-repeat center !important;
		background-size: contain !important;
		z-index: 9;
		top: 3px;
		text-align: center;
	  	position: relative;
	  	left: 48%;
	}
	/* END homepage logo .......... */


	/* Page logo .......... */
	.header-page-logo {
		height: 80px;
		width: 203px;
		background: url(../img/logo.png) no-repeat center !important;
		background-size: contain !important;
		z-index: 9;
		top: 3px;
		text-align: center;
	  	position: relative;
	  	left: 41%;
	}
	/* END Page logo .......... */




	header .menu-header-container {
		text-align: center !important;
		display: block;
	}
	.header-solid .menu-header-container {
		text-align: left;
		display: block;
	}

	#menu-block{
		display:block;
	}
	.header-icons {
		float:right !important;
	}
	#menu-bar {
		z-index:3;
		display: block;
		position:absolute;
		top: 0px;
		width: 100%;
		background-color: rgba(51,51,51,0.5 ) !important;
	}
	#phone-menu {
		display:none;
	}

	#smalldesktop-mainbanner{
		padding: 0px 0px 0px 0px !important;
		margin: 0px 0px 0px 0px !important;
		background-color: rgba(99,206,202,0.5 ) !important;
		height: 220px;
	}



	/* right MENU  .......... */
	header .menu-headerright-container {
		text-align: right;
		top: 0px;
		display: block;

	}
	.header-solid .menu-headerright-container {
		text-align: right;
		top: 0px;
		display: block;
	}
	.menu-headerright-container {
		z-index: 5 !important;
		display:block !important;
		padding-top: 0px;
		padding-right: 0px !important;
	}
	.menu-headerright-container ul {
		top: -40px;

		padding-left:0;

		float: right !important;
	}
	.menu-headerright-container li {
		list-style:none;
		margin-right: 5px !important;
		color: #FFF !important;
	}

	/* MENU Button .......... */
	.menu-headerright-container li a {
		padding: 0px 0px 5px 0px !important;
		margin-left: 10px !important;
	font-family: "Montserrat", sans-serif !important;
		font-weight: 600 !important;
		font-size: 15px !important;
		letter-spacing: -0px !important;

	    border-bottom: 2px solid rgba(256, 256, 256, 0.0);
	    color: white;
	    font-weight: 600;
	    transition: all .5s ease-out;
	}
	.menu-headerright-container li a:hover {
		border-bottom: 2px solid rgba(256, 256, 256, 0.9);
	}
	.menu-headerright-container li.current_page_item a {
		border-bottom: 2px solid #e6e2de;
		transition: all .5s ease-out;
	}
	/* END right MENU  .......... */



	/* Left MENU  .......... */
	.menu-header-container {
		z-index: 5 !important;
		display:block !important;
	}
	.menu-header-container ul {
		padding-left:0;
	}
	.menu-header-container li {
		list-style:none;
		margin-right: 5px !important;
		color: #FFF !important;
	}

	/* MENU Button .......... */
	.menu-header-container li a {
		padding: 5px 5px 5px 5px !important;
		margin-left: 10px !important;
		font-family: "Montserrat", sans-serif !important;
		font-weight: 600 !important;
		font-size: 15px !important;
		letter-spacing: -0px !important;


	    color: white;
	    font-weight: 600;
	    transition: all .5s ease-out;
	}
	.menu-header-container li a:hover {

		background: #017d47;
	}
	.menu-header-container li.current_page_item a {
		background: #017d47;

		transition: all .5s ease-out;
	}
	/* Left MENU  .......... */

	.sub-menu {
		z-index: 9;
		display:none;
		position:absolute;
		top: 40px;
		padding-top: 0px;
		z-index:10000000;
		margin-left:-10px;
		padding-left:0;
		border:0 !important;
		filter: drop-shadow(5px 5px 5px black)
	}
	.sub-menu li {
		z-index: 9;
		float:left;
		clear:left;
		width:100%;
	}
	.sub-menu li a {
		z-index: 9;
		border-color: rgba(51,51,51,0.0 ) !important;
		color:#fff;
		border:0;
		display:block;
		width:190px;
		font-size:16px;
		line-height:25px;
		padding-left:15px !important;
		padding-right:15px !important;
		padding-top: 6px !important;
		padding-bottom: 5px !important;
		margin-top: 2px;
	    background: linear-gradient(to right, rgba(104, 119, 150, 1) 50%, rgba(104, 119, 150, 0.9) 50%);
	    background-size: 200% 100%;
	    background-position: right bottom;
	    transition: all .5s ease-out;
	}
	.sub-menu li a:hover {
		background-position: left bottom;
	}
	.sub-menu li.current_page_item a {
		background-position: left bottom;
	}

	.footer-box{
		border-right: 1px dotted white;
	}
	.nf-form-cont .one-half, .nf-form-cont .three-sixths, .nf-form-cont .two-fourths {
	    width: 49.99% !important;
	}
	.field-wrap .pikaday__container, .field-wrap .pikaday__display, .field-wrap>div input, .field-wrap select, .field-wrap textarea {
	    width: 100% !important;
	}

	.slick-prev, .slick-next {
	    z-index: 1 !important;
	    width: 25px !important;
	    height: 25px !important;
	    top: 50% !important;
	}

	.hide-from-desktop	{
		display:none!important;
	}

	.ska-menu{
		display:none!important;
	}


	 /* Bullets Points......... */
	.fa{
	    color: #017d47 !important;
	    left: -35px;
	    top: 30px;
	    position: relative;
	}



	.fa-phone-square-alt{
	    color: pink !important;
	}
	.bullets {
		padding-left: 50px !important;
	}
	.bullet{
		padding-top: 0px !important;
		padding-right: 40px !important;
		line-height: 25px !important;
		margin: -5px !important;

	}
	 /* END Bullets Points......... */







}
/* End destop ............................................................................................................ */





/* Mobile Menu ............................................................................... */
@media only screen and (max-width: 1030px) {


	.callnow{
	    background: #EC1B24;
	    width: 30px !important;
	    height: 30px !important;
	    border-radius: 30px;
	    transition: all .5s ease-in-out;
	}
	.emailnow{
	    background: #EC1B24;
	    width: 30px !important;
	    height: 30px !important;
	    border-radius: 30px;
	    transition: all .5s ease-in-out;
	}




	.services-text-page{
		width: 100%;
		padding-top: 30px !important;
		padding-bottom: 30px !important;
		padding-left: 30px !important;
		padding-right: 30px !important;
		background: #ffffff;
	}

	.services-text-page-white{
		width: 100%;
		padding-top: 30px !important;
		padding-bottom: 30px !important;
		padding-left: 0px !important;
		padding-right: 0px !important;
		background: #ffffff;
	}

	.fully-insured-message-outer{
		padding-left: 20% !important;
        padding-right: 20% !important;
	}


	.fully-insured-message {
	    position: relative;
	    height: 60px;
	    width: 100%;
	    top: 400px;
	    z-index: 1;
	    border: #0E7D46 3px solid;
	    background: white;
	    padding-top: 5px !important;

	}



	.list-text {
		font-family: "Montserrat", sans-serif !important;
		font-weight: 600;
		color: #017d47;
		font-size: 16px;
		line-height: 16px;
		text-align: center;

	}



	.accreditations{
		display: block;
	    margin: 0 auto;
		text-align: center !important;
		height: auto;
		width: 200px;
		margin-top: 0px !important;
		margin-bottom: 0px !important;
		padding-top: 0px !important;
		padding-bottom: 0px !important;
		padding-left: 0px !important;
		padding-right: 0px !important;
	}

	.accreditations-block{
		text-align: center !important;
		width: 100% !important;
	}



	.content-outer{
		background:	#e6e2de;
		width: 100%;
		padding-top: 30px !important;
		padding-bottom: 30px !important;
		padding-left: 30px !important;
		padding-right: 30px !important;
		margin-top: 0px  !important;
		margin-bottom: 0px  !important;
	}

	.review-text-box{
		height: 200px;
		position: relative;
		bottom: 0px !important;
		padding-top: 123px !important;
		padding-left: 30px !important;
		padding-right: 30px !important;
		background-color: rgba(1, 125, 71, 0.0);
	}
	.reviews-image {
		margin-bottom: 0px !important;
		height: 300px;
		  -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
		  filter: grayscale(100%);
	}

	.call-block{
		position: fixed;
		top: 17px;
		right: 5%;
		color: #017d47;
		font-family: "Montserrat", sans-serif !important;
		font-weight: 700;
		font-size: 30px;
		z-index: 3;

	}




	.content-outer-service{
		background:	#e6e2d;
		width: 100%;
		padding-top: 0px !important;
		padding-bottom: 0px !important;
		padding-left: 0px !important;
		padding-right: 0px !important;
		margin-top: 0px  !important;
		margin-bottom: 0px  !important;
	}

	.content-outer-service-white{
		background:	#ffffff;
		width: 100%;
		padding-top: 40px !important;
		padding-bottom: 40px !important;
		padding-left: 0px !important;
		padding-right: 0px !important;
		margin-top: 0px  !important;
		margin-bottom: 0px  !important;
	}



	.parallax-text-box{
		padding-top: 200px !important;
		padding-bottom: 200px !important;
		padding-left: 30px !important;
		padding-right: 30px !important;
		background-color: rgba(1, 125, 71, 0.0);
	}



	.modal {
	 	padding-top: 120px;

	}
	.menu-outer-padding{
			padding: 0px !important;
	}




	@keyframes zoom {
	    0% {
	        transform: scale(1,1);
	    }
	    0% {
	        transform: scale(1.2,1.2);
	    }
	    0% {
	        transform: scale(1,1);
	    }
	}



	.about-image-pading	{
			padding-bottom: 50px !important;
		}


	.about-image-padding{
		padding-top: 0px !important;
	}



	.left-padding{
		padding-top: 30px !important;
	}
	.box-image-product {
	  display: block;
	  width: 100%;
	  height: 350px;
	  border: 1px solid white;
	}
	.box-image-square {
	  display: block;
	  width: 100%;
	  height: 320px;
	}

	.art-wards-image{
		display: block;
	    margin: 0 auto;
	    text-align: center;
	}
	.art-wards-block{
		padding-top: 0px !important;
		padding-bottom: 20px !important;
		padding-left: 0px !important;
		padding-right: 0px !important;
	}
	.single-page-morephotos{
		border-right: 30px solid white;
		border-bottom: 30px solid white;
		float: left !important;
		padding: 0px !important;
		height: 200px;
	}
	.subscribe-footer-text{
	    padding-left: 5px !important;
	    padding-right: 5px !important;
	    padding-bottom: 0px !important;
	    margin-top: 20px;
	}
	.single-news-image{
		border: 0px white solid;
		width: 100%;
	    padding-top: 0px !important;
	    padding-bottom: 0px !important;
	    padding-left: 0px !important;
	    padding-right: 0px !important;
	    margin-bottom: 30px !important;
	    background: white;
	    box-shadow: 5px 5px 5px #888;
	    display: block;
	    margin: 0 auto;
	}

	.home-welcome-banner{
		background: #017d47;
	    padding-top: 60px !important;
	    padding-bottom: 60px !important;
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
	.home-choose-banner{
		background: #ffffff;
	    padding-top: 60px !important;
	    padding-bottom: 60px !important;
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
	.portfolio-page-outer{
	    margin-bottom: 50px !important;;
		padding-left: 20px !important;
		padding-right: 20px !important;
	}

	.homepage-header-image {
		margin-bottom: 10px !important;
		height: 370px;
	}



	.mainbanner{
		height: 370px;
	}
	.homepage-overlay{
		height: 370px;
	}



	.parallax-block{
		padding-top: 0px !important;
		padding-bottom: 0px !important;
		position: relative;
		height: auto;
		background:	white;
	}


	.homepage-row-one{
		background: #e6e2de;
		padding-top: 50px !important;
		padding-bottom: 40px !important;
	    padding-left: 0px !important;
	    padding-right: 0px !important;
	}

	.homepage-service-one{
		background: #e6e2de;
		padding-top: 50px !important;
		padding-bottom: 40px !important;
	    padding-left: 20px !important;
	    padding-right: 20px !important;
	}
	.page-service-one{
		background: #fff;
		padding-top: 50px !important;
		padding-bottom: 40px !important;
	    padding-left: 30px !important;
	    padding-right: 30px !important;
	}

	.homepage-service-two{
		background: #ffffff;
		padding-top: 0px !important;
		padding-bottom: 0px !important;
	    padding-left: 30px !important;
	    padding-right: 30px !important;
	}
	.article-page {
			height: 100px;
	}
	.home-subject-box{
		margin-bottom: 30px !important;

	}
	.single-page-quote-outer{
	    padding-left: 20px !important;
	    padding-right: 20px !important;
	}

	.social-media-footer-banner{
		margin-top: 30px !important;
	    border-top: 1px dotted #017d47;
		padding-top: 20px !important;

	}
	.social-media-footer-line{
		display: none;

	}
	.welcome-text-padding{
		padding-top: 0px !important;
		padding-bottom: 0px !important;
	    padding-left: 10px !important;
	    padding-right: 10px !important;
	}
	.slick-prev, .slick-next {
	    display: none !important;
	}
	.homepage-latest-mag-image{
		position: relative;
		width: 120px;
		z-index: 1;
		top: 0px;
		box-shadow: 5px 10px 20px #000;
		transform: rotate(20deg);
		margin-top: 0px !important;
		margin-bottom: 20px !important;
	}
	.homepage-latest-text{
		padding-top: 120px !important;
		padding-bottom: 20px !important;
	    padding-left: 10% !important;
	    padding-right: 10% !important;
	}
	.latest-issue-text{
		position: relative;
		top: 20px;
	}
	.previous-issue-all{
		margin-top: 10px;
	    padding-top: 15px !important;
	    padding-bottom: 0px !important;
	    padding-left: 15px !important;
	    padding-right: 15px !important;
	    background: white;
	}
	.page-heading-padding {
	    padding-top: 40px !important;
	    padding-bottom: 40px !important;
	    padding-left: 15px !important;
	    padding-right: 15px !important;
	    background: white;
	}
	.singlepages-banner {
		height: auto;
	    padding-top: 120px !important;
	    padding-bottom: 20px !important;
	    padding-left: 30px !important;
	    padding-right: 30px !important;
	    background: white;
	}


	.singlepages-banner-green {
		height: auto;
	    padding-top: 120px !important;
	    padding-bottom: 20px !important;
	    padding-left: 15px !important;
	    padding-right: 15px !important;
	    background: #017d47;
	}

	.servicespages-banner {
		height: auto;
	    padding-top: 120px !important;
	    padding-bottom: 20px !important;
	    padding-left: 15px !important;
	    padding-right: 15px !important;
	    background: white;
	}

	.servicescontent-banner {
		background: #e6e2de;
		padding-top: 50px !important;
		padding-bottom: 40px !important;
	    padding-left: 30px !important;
	    padding-right: 30px !important;
	}


	.aboutpages-banner {
		height: auto;
	    padding-top: 30px !important;
	    padding-bottom: 30px !important;
	    padding-left: 15px !important;
	    padding-right: 15px !important;
	    background: white;
	}
	.gallery-heading-padding {
	    padding-top: 40px !important;
	    padding-bottom: 0px !important;
	    padding-left: 15px !important;
	    padding-right: 15px !important;
	    background: white;
	}
	.mainpages-background {
		height: auto;
	    padding-top: 0px !important;
	    padding-bottom: 40px !important;
	    padding-left: 15px !important;
	    padding-right: 15px !important;
	}
	.reviewspages-background {
		height: auto;
	    padding-top: 0px !important;
	    padding-bottom: 40px !important;
	    padding-left: 15px !important;
	    padding-right: 15px !important;
	}
	.singlepages-background {
		height: auto;
	    padding-top: 60px !important;
	    padding-bottom: 40px !important;
	    padding-left: 15px !important;
	    padding-right: 15px !important;
	}
	.pages-background {
		height: auto;
	    padding-top: 40px !important;
	    padding-bottom: 40px !important;
	    padding-left: 15px !important;
	    padding-right: 15px !important;
	    background: rgba(215, 211, 199, 0.4);
	}
	.mainpages-grey-background {
		height: auto;
	    padding-top: 40px !important;
	    padding-bottom: 40px !important;
	    padding-left: 15px !important;
	    padding-right: 15px !important;
	    background: rgba(215, 211, 199, 0.4);
	}
	.darker-background {
		height: auto;
	    padding-top: 60px !important;
	    padding-bottom: 40px !important;
	    padding-left: 15px !important;
	    padding-right: 15px !important;
	    background: rgba(215, 211, 199, 0.8);
	}


	/* Single Page...................... */
	.page-text-outer{
	    padding-left: 0px !important;
	}
	/* END Single Page...................... */



	.menu-outer{
	    margin-bottom: 20px !important
	}
	header{
		padding-right: 20px !important;
		padding-left: 20px !important;
	}
	.header-solid{
		padding-right: 20px !important;
		padding-left: 20px !important;
	}
	.header-page{
		padding-right: 20px !important;
		padding-left: 20px !important;
	}




/* HomePage logo .......... */

	/* Menu Home background BANNER (desktop and Mobile) ....................................... */
	header{
		box-shadow: 0px 0px 14px black;
		z-index: 2;
		display: block;
		padding-top: 0px !important;
		padding-bottom: 0px !important;
		height: 80px;
		width: 100%;
		position: fixed;
		background: rgba(256, 256, 256, 1.0);
		-webkit-transition: all 0.3s ease-in-out;
		-moz-transition: all 0.3s ease-in-out;
		-o-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
	}
	.header-solid{
		box-shadow: 0px 0px 14px black;
		z-index: 2;
		display: block;
		padding-top: 0px !important;
		padding-bottom: 0px !important;
		height: 80px;
		width: 100%;
		position: fixed;
		background: rgba(256, 256, 256, 1.0);


		-webkit-transition: all 0.3s ease-in-out;
		-moz-transition: all 0.3s ease-in-out;
		-o-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
	}
	.header-page{
		z-index: 2;
		display: block;
		padding-top: 0px !important;
		padding-bottom: 0px !important;
		height: 80px;
		width: 100%;
		position: fixed;
		background: rgba(256, 256, 256, 1.0);


		-webkit-transition: all 0.3s ease-in-out;
		-moz-transition: all 0.3s ease-in-out;
		-o-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
	}
	/* END Menu Home background banner ............................................................... */


	.desklogo{
		z-index: 7;
	}



	header .desklogo {
		z-index: 9 !important;
		height: 186px;
		width: auto;
		background: url(../img/logo.png) no-repeat center !important;
		background-size: contain !important;
		position: absolute;
		top: 161px;
		text-align: center;
	  	position: relative;
	  	left: 50%;
		   -webkit-transition: all 0.4s ease;
		    transition: all 0.4s ease;
		    -webkit-transform: translateX(-50%);
		    -ms-transform: translateX(-50%);
		    transform: translateX(-50%);
	}
	.header-solid .desklogo {
		z-index: 9;
		height: 65px;
		width: 157px;
		background: url(../img/logo.png) no-repeat center !important;
		background-size: contain !important;
		position: absolute;
		top: 5px;
		text-align: center;
	  	position: relative;
	  	left: 50%;
			-webkit-transform: translateX(-50%);
			-ms-transform: translateX(-50%);
			transform: translateX(-50%);
	}
	/* END homepage logo .......... */

	/* Page logo .......... */
	.header-page-logo {
		z-index: 9;
		height: 65px;
		width: 157px;
		background: url(../img/logo.png) no-repeat center !important;
		background-size: contain !important;
		position: absolute;
		top: 5px;
		text-align: center;
	  	position: relative;
	  	left: 50%;
			-webkit-transform: translateX(-50%);
			-ms-transform: translateX(-50%);
			transform: translateX(-50%);
	}
	/* END Page logo .......... */





	/* Page logo .......... */
	.header-mobile-logo {
		z-index: 9;
		height: 65px;
		width: 157px;
		background: url(../img/logo.png) no-repeat center !important;
		background-size: contain !important;
		position: absolute;
		top: 5px;
		text-align: center;
	  	position: relative;
	  	left: 50%;
			-webkit-transform: translateX(-50%);
			-ms-transform: translateX(-50%);
			transform: translateX(-50%);
	}

	/* END homepage logo .......... */



	header .header-message{
		padding-left: 5px !important;
		padding-right: 5px !important;
		width: 100%;
		text-align: center !important;
		position: fixed;
		left: 0px;
		height: 40px;
		top: 15px;
		z-index: 9;
		-webkit-transition: all 0.3s ease-in-out;
		-moz-transition: all 0.3s ease-in-out;
		-o-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
	}

	.header-solid .header-message{
		width: 100%;
		position: fixed;
		left: 0px;
		height: 40px;
		top: -100px;
		z-index: 9;
		-webkit-transition: all 0.3s ease-in-out;
		-moz-transition: all 0.3s ease-in-out;
		-o-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;

	}

	.header-message-font{
		padding-top: 7px !important;
		text-shadow: 1px 1px 10px #fff, 1px 1px 10px #fff;
		color: #000;
		font-family: "Montserrat", sans-serif !important;
		font-weight: 800 !important;
		font-size: 12px !important;
		line-height: 14px !important;
		text-align: center !important;
		text-transform: uppercase !important;
	}



	.menu-banner{
		position: relative;
		top: 140px;

	}






	/* NEW Mobile Menu .............................................................................................................. */
	.menu-header-container {
		display: none;
	}
	.outer-menu {
		z-index: 9;
	    position: fixed;
	    width: 100%;
	    top: 0;
	    left: 0;
	    justify-content: flex-end;
	    align-items: center;
	    align-content: center;
	    padding: 32px;
	    height: 96px;
	    box-sizing: border-box;
	    background-color: rgba(20, 20, 20, 0.4);
	}
	.menu li, .menu.horizontal li {
	    display: block;
	    color: white;
	    background: #017d47;
		font-family: "Montserrat", sans-serif !important;
		font-weight: 600;
		font-size: 20px;
		letter-spacing: 0px !important;
		padding: 5px 0px 5px 0px !important;
		margin-bottom: 5px !important;
	}
	.menu li:hover, .menu.horizontal li:hover {
	   	color: white !important;
	    background: black;
	}
	.menu a:link {
	    text-decoration: none;
	    color: white;
	    text-align: center !important;
	    width: 100%  !important;
	}
	.menu a:visited {
	    color: white;
	    text-align: center !important;
	    width: 100%  !important;
	}
	.ska-menu {
	    top: 30px;
	    left: 30px;
	    padding-top: 0px !important;
	    display: flex;
	    width: 40px;
	    height: 40px;
	    position: fixed;
	    z-index: 3;
	}
	.regg-menu-input {
	    appearance: none;
	    -webkit-appearance: none;
	    -moz-appearance: none;
	    outline: none;
	    box-shadow: none;
	    border-radius: 0;
	    -webkit-font-smoothing: inherit;
	    -moz-osx-font-smoothing: inherit;
	    margin: 0;
	    width: 24px;
	    height: 22px;
	    cursor: pointer;
	    z-index: 40;
	    opacity: 0;
	}
	.regg-menu-input:checked~.regg-menu__wrapper {
	    top: 0;
	    max-width: 9999px;
	    max-height: 9999px;
	}
	.regg-menu-input:checked~.regg-menu__reggaskas>.regg-menu__reggaskas__block {
	    transition: top .2s, bottom .2s, opacity .2s .2s, transform .2s .2s;
	}
	.regg-menu-input:checked~.regg-menu__reggaskas>.regg-menu__reggaskas__block:nth-child(1) {
	    top: 10px;
	    transform: rotate(+45deg);
	}
	.regg-menu-input:checked~.regg-menu__reggaskas>.regg-menu__reggaskas__block:nth-child(2) {
	    opacity: 0;
	}
	.regg-menu-input:checked~.regg-menu__reggaskas>.regg-menu__reggaskas__block:nth-child(3) {
	    bottom: 10px;
	    transform: rotate(-45deg);
	}
	.regg-menu__reggaskas {
	    width: 24px;
	    height: 22px;
	    position: relative;
	    margin-left: -24px;
	    z-index: 30;
	}
	/* menu icon .....  */
	.regg-menu__reggaskas__block {
	    display: block;
	    width: 24px;
	    height: 3px;
	    background-color: #017d47;
	    position: absolute;
	    transition: top .2s .1s, bottom .2s .1s, opacity .2s 0s, transform .2s 0s, background-color .2s 0s;
	    transform-origin: 50%;
	}
	[type=checkbox], [type=radio] {
	    padding: 25px !important;
	}
	.regg-menu__reggaskas__block:nth-child(1) {
	    top: 0;
	}
	.regg-menu__reggaskas__block:nth-child(2) {
	    top: 10px;
	}
	.regg-menu__reggaskas__block:nth-child(3) {
	    bottom: 0;
	}
	.regg-menu__wrapper {
		z-index: 9;
	    background-color: #ffffff;
	    width: 100vw;
	    height: 100vh;
	    position: fixed;
	    top: -100vh;
	    left: 0;
	    max-width: 0;
	    max-height: 0;
	    transition: top .3s, left .3s, max-width .3s 0s, max-height .3s 0s;
	    box-sizing: border-box;
	    overflow: hidden;
	}
	.regg-menu-input{
		padding-left: 0px !important;
	}
	/* END .. Top sliding menu ..................................................  */

	.outer-button-padding{
	    padding: 50px 15px 15px 15px !important;
	}
	/* NEW END mobile.............................................................................................................  */



	 /* Bullets Points......... */
	.fa{
	    color: #017d47 !important;
	    left: -35px;
	    top: 30px;
	    position: relative;
	}
	.bullets {
		padding-left: 0px !important;
	}
	.bullet{
		padding-top: 0px !important;
		padding-right: 0px !important;
		line-height: 25px !important;
		margin: -5px !important;

	}
	 /* END Bullets Points......... */


	.footer-box{
		margin-bottom: 30px;
		border-bottom: 1px dotted white;
	}
	.centre-text-mobile{
		text-align: center !important;
	}
	h1 {
		text-align: center !important;
	}
	h2 {
		text-align: center !important;
	}

	.hide-from-mobile{
		display:none!important;
	}

	.hs-box{
		background: white;
		padding: 15px !important;
		margin-bottom: 10px!important;
	}


}
/* END mobile.........................................................................  */






body {
    color: #333333 !important;
}




.caps{
  text-transform: uppercase;
}
hr{
	color: #017d47 !important;

}
.no-margin{
	margin: 0px 0px 0px 0px !important;
}
.no-padding{
	padding: 0px 0px 0px 0px !important;
}
.white-text{
	color: white !important;
}
.green-text{
	color: #017d47 !important;
}
.red-text{
	color: #EC1B24 !important;
}

.centre-text{
	text-align: center !important;
}
.full-width{
	width: 100% !important;
}
.text-shadow{
	text-shadow: 2px 2px 8px #333333;
}
.text-left {
	text-align: left !important;
}
.whitetext{
	color: white !important;
}
.bottom-spacing{
	margin-bottom: 20px !important;
}
.top-spacing{
	margin-top: 40px !important;
}
.call{
	font-size: 25px;
}

.centre-object{
	display: block !important;
    margin: 0 auto !important;
    width: 100% !important;
}

/* Edit This live homepage......................................... */
#wp-admin-bar-wp-logo,
#wp-admin-bar-site-name,
#wp-admin-bar-customize,
#wp-admin-bar-comments,
#wp-admin-bar-new-content,
#wp-admin-bar-edit,
#wp-admin-bar-edit-profile,
#wp-admin-bar-search {
   display: none !important;
}


/* WordPress Edit list button ..................................................  */
.post-edit-link {
	z-index: 99 !important;
	display:block;
	position:fixed;
	top: 10%;
	left:0;
	background: red;
	text-decoration:none;
	padding: 20px;
	color: white !important;
	border-bottom-right-radius: 20px;
	border-top-right-radius: 20px;
	box-shadow: 0px 3px 8px 0px #333333;
}
.post-edit-link:hover {
	background: #017d47;
	color: white !important;
}