/*Theme Default Colours*/
.has-prime-color, .prime { color: var(--prime); }
.has-prime-background-color, .primebg { background-color: var(--prime); }

.has-second-color, .second { color: var(--second); }
.has-second-background-color, .secondbg { background-color: var(--second); }

.has-accent-color, .accent { color: var(--accent); }
.has-accent-background-color, .accentbg { background-color: var(--accent); }

.has-black-color { color: #000; }
.has-black-background-color { background-color: #000 }

.has-darkgrey-color { color: #333; }
.has-darkgrey-background-color { background-color: #333 }

.has-grey-color { color: #ccc; }
.has-grey-background-color { background-color: #ccc }

.has-white-color { color: #fff; }
.has-white-background-color { background-color: #fff }

.has-blue-color { color: #0000ff; }
.has-blue-background-color { background-color: #0000ff }
/*Theme Default Colours*/


#wprmenu_bar{
	max-width: 100%;
}

html body{
	font-family: "Roboto", sans-serif;
	font-size: 18px;
	line-height: 1.5em;
	color: #333;
	overflow-x: hidden;
}

html body p{
	font-size: 18px;
	line-height: 1.5em;
}

body a{
	color: var(--prime);
	font-weight: bold;
	text-decoration: none !important;	
	transition: 0.3s;
}

body a:hover, body a:focus{
	color: #000;
	outline:none !important;
}

@media (max-width: 992px){
	.half2{
		margin-top:30px;
	}
}

input:focus, button:focus{
	outline: none !important;
	box-shadow:none !important;
	border-color: #000 !important;
}

blockquote{	
	background: #ccc;
	display: block;
    padding: 30px;
    font-style: italic;
    margin:0 50px;
}

body h1, body h2, body h3, body h4, body h5, body h6{
	font-family: "Bebas Neue", sans-serif;
	font-weight: bold;
	letter-spacing: 1px;
	line-height: 1.1em;
}

body h1{font-size: 60px;}
body h2{font-size: 50px;}
body h3{font-size: 40px;}
body h4{font-size: 30px;}
body h5{font-size: 22px;}
body h6{font-size: 18px;}


.wc{
	max-width: 1600px;
}

.ctn{
	position: relative;
	padding:50px 0;
}

.grad{
	background: rgb(137,196,254);
	background: linear-gradient(270deg, rgba(137,196,254,1) 35%, rgba(83,136,189,1) 81%);
}

.br{
	border-radius: 15px;
}

.bs{
	box-shadow: 1px 1px 20px -10px #333;
}




body .brandbtn, body .wp-block-button .wp-block-button__link{
	background: var(--prime);
	color: #fff;
	transition: 0.3s;	
	font-size:20px;
	font-weight:500;
	padding:15px 35px;
	white-space: normal;
	border-radius: 30px;
	border: 2px solid var(--prime);
}

.brandbtn:hover, body .wp-block-button .wp-block-button__link:hover{
	background: #fff;
	color:  var(--accent);
	transition: 0.3s;	
}

body .altbtn{
	background: var(--second);
	color: #fff;
	border: 2px solid var(--second);
}

body .altbtn:hover{
	background: #000;
	color:  var(--prime);
}

.brandbtn i{
	margin-right:10px;
}

/*THEME DEFAULTS*/


/*DEFAULT CF7 STYLING*/
/*.wpcf7{
	background: #ccc;
	
}*/

.frmside{	
	padding: 50px !important;
	border-radius: 30px 0 0 30px;
}

.wpcf7 .frm{
	margin-bottom: 15px;
}

.wpcf7 label{
	width:100%;
	color: #fff;
}

.wpcf7 input, .wpcf7 textarea, .wpcf7 select{
	width:100%;
	padding: 15px 25px;
	outline:none !important;
	border:1px solid #000 !important;
	border-radius: 15px;
}

.wpcf7 textarea{
	height: 200px;
}

.wpcf7 input[type="checkbox"]{
	margin-right: 5px;
    height: 20px;
    width: 20px !important;
    position: relative;
    top: 3px;
}

.wpcf7 .frmgdpr{
	text-align: center;
}

.wpcf7 .frmgdpr a{
	color: #000;
}

.wpcf7 .frmgdpr a:hover{
	color: #fff;
}

.wpcf7 .wpcf7-submit{
	background: #000 !important;
	color: #fff !important;
	transition: 0.2s;
}

.wpcf7 .wpcf7-submit:hover{
	background: #fff !important;
	color: #000 !important;
	transition: 0.2s;
}
/*DEFAULT CF7 STYLING*/


/*CONTACT TEMPLATE*/
.acf-map {
	width: 100%;
	height: 400px;
	border: #f5f4ef solid 1px;
	margin: 0;
}

.acf-map .companyname{
	font-weight: bold;
	font-size: 20px;
	margin:0 0 10px 0;
}

.acf-map .companyaddress{
	font-size: 14px;
	margin:0 0 5px 0;
}

.acf-map .companyaddress a{
	font-weight: bold;
	font-size: 14px;
}

.mapctn{
	border-radius: 0 30px 30px 0;
	overflow: hidden;
}

@media (max-width: 992px){
	.mapctn{
		margin-top: 40px;
	}
}
/*CONTACT TEMPLATE*/


/*SIDEBAR 2 COLUMN TEMPLATE*/
.sidebar-side{
	position: sticky !important;
	position: -webkit-sticky;
    top: 100px;
    z-index: 1;
}

.sidectn{
	margin-bottom: 30px;
}

.sidectn .heading{
	margin:0 0 10px 0;
	font-weight: bold;
	font-size: 22px;
}

.sideimgctn img{
	margin-bottom: 10px;
	width:100%;
}

.sidenav ul{
	list-style: none;
	padding-left: 0px;
	margin:0px;
}

.sidenav ul a{
	display: block;
	background: #000;
	color: #fff;
	padding: 5px;
	border:1px solid #000;
	margin-bottom: 2px;
}

.sidenav ul a:hover{
	background: #fff;
	color: #000;
	padding-left: 10px;
}
/*SIDEBAR 2 COLUMN TEMPLATE*/



/*.overlaypanel{
	position: relative;
}

.overlaypanel:after{
	background:rgba(0,0,0,0.5);
	position: absolute;
	content:'';
	width:100%;
	height: 100%;
	left:0px;
	top:0px;
}

.overlay-inner{
	position: relative;
	z-index: 10;
}*/


.slick-dots{
	position: relative;
    bottom: -25px;
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
}

.slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 4px;
    margin: 0 5px;
    padding: 0;
    display: inline-block;
    background: var(--prime);
    border-radius:20px;
    cursor: pointer;
    transition: 0.2s;
}

.slick-dots li.slick-active{
	background: var(--second);
}

.slick-dots li button:before{
	display: none;
}

.slick-dots li button{
	background: none;
	border:none;
	font-size: 0px;
	outline: none;
}

/*.ekko-lightbox-nav-overlay a span{
	font-size:50px;
}*/


/**************HEADER***************/
.topheader{
	background: var(--prime);
	padding: 2px 0;
	position: relative;
	z-index: 9999;
}

.topheader .tr{
	text-align: right;
}

.topheader a{
	color: #000;
	margin-left: 15px;
	font-weight: 500;
	font-size: 16px;
	transition: 0s;
	/*text-shadow:rgba(0, 0, 0, 0.4) 0px 2px 1px, rgba(0, 0, 0, 0.1) 0px 5px 8px, rgba(0, 0, 0, 0.1) 0px 10px 13px*/
}

.topheader a:hover{
	color: #fff;
	transition: 0s;
}

.textshadow{
	text-shadow:rgba(0, 0, 0, 0.4) 0px 4px 3px, rgba(0, 0, 0, 0.1) 0px 8px 13px, rgba(0, 0, 0, 0.1) 0px 18px 23px
}

.header{
	border-top: 2px solid var(--prime);
	padding:15px 0;
	background: #fff;
	position: sticky !important;
	position: -webkit-sticky;
  top: 0px;
  z-index: 999;
  box-shadow:0px 0px 1px 1px #ccc;
}

.header .logo img{
	width:250px;
	min-width:250px;
}

.header .nav{
	display: block;
}

.nav ul{
	margin: 0px !important;
	font-size: 0px;
	text-align: right;
	padding-left: 0px;
}

.nav ul li{
	display: inline-block;
	position: relative;
	padding:0px 0 0px 30px;
}

.nav ul li a{
	display: block;
	font-size: 18px;	
	font-weight: 500;
	color: #000;
}

.nav ul li a i{
	margin-left: 5px;
	font-size: 12px;
	transition: 0.3s;
	color: #000;
}

.nav ul li:hover a i{
	transform: rotate(90deg);
	transition: 0.3s;
}

.nav ul li .sub-menu{
	position: absolute;	
	z-index: 20;
	display: none;
	left:30px;
	background: #fff;	
}

.nav ul li .sub-menu li{
	min-width:250px;
	text-align: left;
	padding: 0px;
}

.nav ul li .sub-menu li:first-of-type{
    margin-top:34px;
}

.nav ul li .sub-menu li a{
	display: block;	
	color:var(--accent);
	padding: 2px 10px;
	font-size: 18px;
	font-weight: 500;
	transition: 0s;
}

.nav ul li.menu-item-has-children:hover .sub-menu{
	display: block;
}

.nav ul li .sub-menu li a:hover{
	background: var(--prime);
	color: #fff
}


.nav .current_page_item a, .nav ul li a:hover, .nav li.current-menu-parent a{
	color: var(--prime);
}

.nav ul li.navbtn a{
	border: none;
	border: 2px solid var(--prime);
	background: #000;
	color: #fff;
	font-weight: 500;
	padding: 10px 20px;
	border-radius: 30px;
}

.nav ul li.navbtn a:hover{
	border: 2px solid #000;
	background: var(--prime);
	color: #fff;
}


@media (max-width: 1200px){
	.nav ul li.homenav{
		display: none;
	}

	.nav ul li{
		padding: 0 0 0 20px;
	}

	.nav ul li a{
		font-size: 18px;
	}

	.nav ul li.navbtn a{	
		padding: 10px 15px;
	}
}


@media only screen and (max-width: 992px){
	html {
	    padding-top: 60px !important;
	}

	.topheader{
		display: none;
	}

	#wprmenu_bar .bar_logo {
    border: none;
    margin: 0;
    padding: 0px 8px 0px 0px;
    width: auto;
    height: 50px;
    position: relative;
    top: -10px;
    left: -8px;
  }

  #wprmenu_menu_ul i{
  	display: none;
  }

  /*div#mg-wprm-wrap ul li span.wprmenu_icon{
  	color: var(--prime) !important;
  }*/
}
/**************HEADER***************/



/**************BREADCRUMBS***************/
.breadhead{
	position: relative;	
	padding: 40px 0;
	color: #000;
	position: relative;	
	overflow: hidden;
	/*border-bottom: 1px solid var(--second);*/
	background: var(--prime);
}

/*.breadhead .overlay{
	background: rgb(10,31,46);
	background: linear-gradient(112deg, rgba(0,0,0,0.95) 18%, rgba(255,255,255,0.20) 70%);	
}*/

.breadhead h1{
	margin:0px;	
	letter-spacing: 1px;
	font-size: 30px;
	color: #fff
}

.rank-math-breadcrumb{
	/*font-style: italic;*/	
	letter-spacing: -1px;
}

.rank-math-breadcrumb p{
	margin-bottom: 0px;
	color: #fff;
	font-size: 18px;
}

.rank-math-breadcrumb a{
	color: #fff;
	font-weight: normal;
} 

.rank-math-breadcrumb a:hover{
	color: #fff;
	font-weight: normal;
} 

.sidetri{
	height: 100%;
    position: absolute;
    width: 300px;
    right: -100px;
    clip-path: polygon(25% 0%,100% 0%,100% 100%,25% 100%,0% 50%);
    clip-path: polygon(100% 0%, 75% 50%, 100% 100%, 25% 100%, 0% 50%, 25% 0%);
    z-index: 0;
    top: 0px;
    background: rgba(137, 196, 254, 0.9)
}

@media (max-width: 1100px){
	.breadhead{	
		padding: 60px 0;
	}
}

@media (max-width: 992px){
	.breadhead h1{	
		font-size:40px;
	}

	.sidetri{
    width: 200px;
  }
}
/**************BREADCRUMBS***************/



/**************FOOTER***************/
.footer {
  background-image: url('../img/footer.jpg');
  /*background: var(--prime);*/
  color: #fff;
  padding: 100px 0;
  position: relative;
  border-top: 6px solid var(--prime);
  font-size: 16px;
}

.footer .overlay{
	background: rgba(0,0,0,0.75);
}

.footer .container{
	position: relative;
	z-index: 99
}

.fcol h3{
	color: var(--prime);
	font-size: 26px;
	margin-bottom: 10px;
}

.fcol ul{
	list-style: none;
	padding-left: 0px;
}

.fcol a{
	color: #fff;
	font-weight: normal;
}

.fcol a:hover{
	color: var(--prime);
}


.footer .copyright{
	text-align: center;
}

.footer .copyright p {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.footerlogo{
	padding-right: 50px;
	margin-bottom: 30px;
}

.rwds{
	text-align: center;
	margin-top: 40px;
}

.rwds a{
	font-weight: normal;
	color: var(--prime);
}

.rwds a:hover{	
	color: #fff !important;
}

/*SOCIALS*/
.socials{
	list-style: none;
	padding-left: 0px;
	margin: 10px auto
}

.socials li{
	display: inline-block;
	margin:0 2px;
}

.socials li img{
	transition: 0.2s;
	width:35px;
}

.socials li img:hover{
	transition: 0.2s;
	transform: scale(0.90);
}

@media (max-width: 992px){
	.fcol{
		margin-bottom: 30px;
	}
}

@media (max-width: 768px){
	.footer{
		text-align: center;
	}

	.footerlogo{
		padding-right: 0px;
		max-width: 200px;
		margin: 0 auto;
	}

	.copyctn{
		margin-top: 0px !important;
	}
}
/**************FOOTER***************/



/**************MODAL***************/
.modal{
	z-index: 9999999;
}

.modal-open{
	overflow: visible !important;
}

body {
    padding-right: 0px !important;
}
/**************MODAL***************/


/**************BLOG INDEX***************/
.newsimg{
	width: 100%;
	height: 400px;
	object-fit: cover;
}

.newsrow{
	color: #000 !important;
	font-weight: normal;
	line-height: 23px;
	margin-bottom: 50px;
}

.newsrow h3{
	color: var(--prime);
	font-size: 40px;
	margin-bottom: 10px;
}

.rmn{
	margin-top: 10px;
}

.ntxt{
	padding: 50px;
}

.cats{
	text-align: center;
	font-size: 0px;
}


body .pagination{
	text-align: center;
	clear: both;
}

body .pagination{
	text-align: center;
	display: block;
}

body .pagination span, body .pagination a{
	font-weight: bold;
	margin-right:10px;
	font-size:16px;
}

@media (max-width: 992px){
	.newsouter a h3{
		margin-top:30px;
	}
}
/**************BLOG INDEX***************/

/**************SINGLE BLOG***************/
.single-title{
	margin-top:0px;
}

.single-ctn .mainimg{
	width:100%;
	margin-bottom: 30px;
}
/**************SINGLE BLOG***************/

/**************SEARCH***************/
/*form*/
.svg-icon {
    width: 1em;
    top: 3px;
    height: 1em;
    position: relative;
}

.svg-icon path,
.svg-icon polygon,
.svg-icon rect {
  fill: #000;
}

.svg-icon circle {
  stroke: #000;
  stroke-width: 1;
}
/*form*/

.searchresults a{
	color: #000;
}

.searchresults .pagination{
	margin-top: 30px;
}
/**************SEARCH RESULTS***************/



/*Reuseable Gut Blocks */
.bannerblock .wp-block-columns{
	margin-bottom: 0px;
}



.headcol{
	max-width: 1200px;
	margin: 0 auto;
	padding-top: 10px;
}


@media (max-width: 992px){
	.headtxt h2{
		text-align: center !important;
	}

	body .brandbtn, body .wp-block-button .wp-block-button__link{
		width: 100%;
	}
}


/*.heroctn{
	border-bottom: 6px solid var(--prime);
}*/

.herotxt, #n2-ss-2item1{
	font-family: "Bebas Neue", sans-serif !important;
	text-shadow:rgba(0, 0, 0, 0.4) 0px 4px 3px, rgba(0, 0, 0, 0.1) 0px 8px 13px, rgba(0, 0, 0, 0.1) 0px 18px 23px !important;
	font-size:60px !important
}

.herobtn, .ns a{
	font-family: "Bebas Neue", sans-serif !important;
	text-shadow:rgba(0, 0, 0, 0.4) 0px 2px 1px, rgba(0, 0, 0, 0.1) 0px 5px 8px, rgba(0, 0, 0, 0.1) 0px 10px 13px
}


.bannerctn{
	padding: 40px;
	text-align: center;
	color: #fff;
}

.bannerctn h2{
	color: #fff;
	margin-bottom: 0px;
	font-size: 54px;
}



.bannerctn h4{
	color: #fff;
	margin-bottom: 0px;
	font-size: 20px;
	display: none;
}


.bannerctn p{
	margin-bottom: 0px;
}


.bannerctn .btn{
	border: 2px solid #fff;
	color: #fff;
	margin-top: 10px;
	font-size: 24px;
	padding: 10px 30px;
	font-weight: bold;
	background: #fff;
	width: 100%;
	color: var(--prime);
}

.bannerctn .btn:hover{
	background: transparent;
	color: #fff
}



.bannerctn a{
	color: #fff;
	font-weight: 500;
	border-radius: 30px;
	font-size: 22px;
}

.contactbanner{
	text-align: left;
}

.br{
	text-align: right;
}



.contactbanner a:hover{
	color: #ccc;
}



@media (max-width: 992px){

	.contactbanner{
		text-align: center;
		padding: 40px 15px;
	}

	.br{
		text-align: center;
	}

	.bannerctn a{
		font-size: 17px;
	}

	.contactbanner p a{
		display: block;
	}

	.contactbanner span{
		display: none;
	}
}


.textctn{
	text-align: center;
}

.shortctn{
	max-width: 800px;
	display: block;
	margin: 0 auto;
}



.imgctn{
	position: relative;
	overflow: hidden;
}

.imgctn img{
	transition: 0.4s;
	transform: scale(1.0);
	object-fit: cover;
	height: 350px;
	width: 100%;
}

.childctn{
	margin-bottom: 30px;
}

.childctn i{
	color: var(--prime) !important;
	margin-right: 10px !important;
	transition: 0.3s;
}

.childctn h5{
	color: #000;
	font-size: 32px;
}

.childctn:hover h5{
	color: var(--prime);
}

.childctn:hover img{
	transform: scale(1.05);
	transition: 0.4s;
}

.childctn:hover i{	
	margin-right: 15px !important;
	transition: 0.3s;
}



@media (max-width: 992px){
	.imgctn img{
		height: 250px;		
	}	
}


.outergal img{
	object-fit: cover;
	height: 500px;
	width: 100%;
}

@media (max-width: 992px){
	.outergal{
		margin-bottom: 30px;
	}

	.outergal img{		
		height: 350px;		
	}
}



.facilitiesctn{
	background: #f5f5f5;
	text-align: center;
}

.outerfac{
	margin-bottom: 30px;
}

.innerfac{
	display: block;
	background: #fff;
	padding: 30px;
	border-radius: 15px;
	font-weight: 500;
	transition: 0.3s;
}

.innerfac img{
	width: 80px;
	margin-bottom: 10px;
	color: var(--prime);
}

.innerfac h3{
	font-size: 22px;
	margin-bottom: 10px;
	color: #000;
	font-weight: 500;
}

.innerfac p{
	font-size: 14px;
	margin-bottom: 0px;
	color: #000;
}

.innerfac .rm{
	display: block;
	margin-top: 20px;
}

.innerfac:hover{
	background: #ebe6e6;
	transition: 0.3s;
}


.faqctn h2{
	text-align: center;
	margin-bottom: 30px;
}

.wp-block-getwid-accordion__header{
	background: var(--prime);
}

.wp-block-getwid-accordion .wp-block-getwid-accordion__header-wrapper a{
	color: #fff;
	font-weight: normal;
}



.homemap{
	height: 600px;
}




.singservicectn{
	position: relative;
}

.singservicectn h2{
	font-size: 28px;
}


.contactpanctn{
	position: relative;
	background: var(--second) !important;
	padding: 50px 0;	
	border-top: 2px solid var(--prime);
	border-bottom: 2px solid var(--prime);
}

.contactpanctn h2{
	text-align: center;
	color: var(--prime);
	margin-bottom: 50px;
}

/*.contactpanctn .overlay{
	background: rgba(0,0,0,0.80);
}*/

.contactpanctn .wpcf7{
	padding: 0px;
	background: none;
}

.contactpanctn label{
	color: #fff;
}

.contactpanctn input, .contactpanctn textarea{
	background: rgba(255, 255, 255, 0.9);
	border: 2px solid var(--prime) !important;
	border-radius: 10px;
	padding: 15px;
}

.contactpanctn .wpcf7 .wpcf7-submit{
	background: var(--prime) !important;
	border: 1px solid var(--prime) !important;
	padding: 15px 20px;
	font-size: 20px;
	font-weight: 500;
	color: #fff !important;
}

.contactpanctn .wpcf7 .wpcf7-submit:hover{
	opacity: 0.8;
}

.contactpanctn .frmgdpr a{
	color: var(--second);
}

.servsliderctn h2{
	text-align: center;
	margin-bottom: 20px;
}

.servslider{
	display: none;
}

.servslider .slick-slide{
	margin: 0 10px;
}


.singservicectn .mainimg{
	object-fit: cover;
	width: auto;
	height: 300px;
	float: right;
	margin: 0 0 15px 20px;
}

.singservicectn .cornerimg{
	position: absolute;
	bottom: -150px;
	right: 50px;
	opacity: 0.3;
}

@media (max-width: 992px){
	.singservicectn .mainimg{
		object-fit: initial;
		width: 100%;
		height: auto;
		margin: 0 0 30px 0;
		float: none;
	}
}

@media (max-width: 768px){
	.singservicectn .cornerimg{
		bottom: -250px;
		right: -30px;		
	}
}



.outerserv{
	margin-bottom: 20px;
}

.outerserv a{
	display: block;
}

.outerserv .imgctn{
	overflow: hidden;
	border: 1px solid var(--second);
}

.outerserv img{
	object-fit: cover;
	width: 100%;
	height: 340px;
	transform: scale(1.0);
	transition: 0.3s;
}

.outerserv h3{
	font-size: 34px;
	margin-top: 10px;
	color: #000;
	transition: 0.3s;
}

.outerserv i{
	margin-right: 10px;
	transition: 0.3s;
}

.outerserv a:hover h3{
	color: var(--prime);
	transition: 0.3s;
}

.outerserv a:hover i{
	margin-right: 15px;
	transition: 0.3s;
	color: var(--second);
}
.outerserv a:hover img{
	transform: scale(1.05);
	transition: 0.3s;
}



.quotefrm{
	background: var(--prime);
	padding: 40px;
	border-radius: 40px;
	margin-top: 20px;
}

.quotefrm .wpcf7{
	text-align: left;
}
