@charset 'UTF-8';

html,
html * {
  box-sizing: content-box;
  margin: 0;
  padding: 0;
  font-family: "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
  font-size: 24px;
  word-spacing: normal;
}

@import "compass/css3";

 * {box-sizing: border-box;}

body {
	
	background-color: white;
}

header {
	background-color: rgb(61, 61, 206); 
	
}

.sitenavbanner {
	position: relative;
	width: 100vw;
	height: fit-content;
	
}

.sitenavbanner .logo {
	
	z-index: 1;
	height: 150px;
	width: auto;
	margin-left: 10px;
	
}



.site-nav {
	position:relative;
	padding-top: 10px;
	height: fit-content;
	
  }
  
  
* {box-sizing:border-box}


.banner-container {
	
	 width: 100vw;
	 height: fit-content;
	 overflow-x: hidden;
	 	 
	}
	




	.banner-container .banner-image {
	
	width: 100%;
	height: auto;
	
	
	
  } 

  .banner-width {
	width: 100vw;
	height: auto;
}

.banner-text {
  text-align:center;
  color:white;
  font-size: 3em;
  font-weight:349;
  letter-spacing: 2px;
  padding: 8px 12px;
  position: absolute;
  bottom: 5%;
  width: 100%;
  text-align: center;
}
 
h1 {
	font-family: "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
	font-size: 36px;
	color: #3A3A3A;
	margin-bottom: 0%;
	/*text-shadow: 0px 0px 10px rgba(0, 0, 0,.05);*/
	font-weight: 300;
    text-align: center;
    padding: 35px 25px 15px 25px;
    /*text-shadow: 7px 7px 8px rgba(0, 0, 0,.2);*/
}

h2 {
	font-family: "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
	font-weight: normal;
	font-weight: 300;
	font-size: 28px;
	line-height: 32px;
	text-align: left;
	
	padding-bottom: 15px;
	padding: 25px 10px 5px 10px;
	color: darkblue;
	letter-spacing:normal;
	text-transform:none;
	/*text-shadow: 7px 7px 8px rgba(0, 0, 0,.2);*/
}

h3 {
	font-size: 22px;
	font-weight: 300;
	line-height: 1.3;
	
	letter-spacing: 1px;
	letter-spacing:normal;
	padding: 10px 10px 10px 0px;
	text-transform:none;
	/*text-shadow: 0px 0px 8px rgba(0, 0, 0,.2);*/
	text-align: left;
}



dfn {
	font-size: 18px;

}

p {
	font-size: 21px;
	font-weight: 335;
	font-weight: 300;
	line-height: 1.3;
	padding: 0px 0px 0px 0px;
	color: #3A3A3A;
	color: black;
	background-color: transparent;
	
	}

	p + p {
		margin-top: 10px;
	}

li {

	font-weight: 300;
	line-height: 1.3;
	
	color: #3A3A3A;

	
	}

a {
	font-weight: 300;
	color: black;
}

a:hover {
	color:rgb(61, 61, 206);
	text-decoration-color: rgb(61, 61, 206);
}




sup {

	font-size: 18px;
}


.below_img {
	border-top: 2px solid rgb(61, 61, 206);
	
}

/*-- article---- article---- article---- article---- article---- article---- article---- article---- article---- article--*/

/*-- article---- article---- article---- article---- article---- article---- article---- article---- article---- article--*/

.main-article {
  position:relative;
  height:auto;
  width:100vw;
  background-color: transparent;
  /*padding-top: 10px;*/
  margin: 0px auto 20px auto;
  
  
}

.main-article .flex-container {
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap:wrap;
	
	width: 100%;
  }
  
  .main-article .flex-container > div {

	margin:0px;
	
	width: 100vw;
	
	
  }	

  .main-article .flex-container > div div {
	z-index:10;
	width: fit-content;
	margin-left: auto;
	margin-right: auto;
	height: fit-content;
	margin-top: auto;
	margin-bottom:auto;
	padding: 20px 20px 20px 20px;
				
	
	
  }

  .main-article .flex-container > div div p {
	font-size: 22px;
	padding-left: 40px;
	padding-right: 40px;
  }

  .main-article .flex-container > div div h2 {
	font-size: 30px;
	text-align: center;
	margin-top:0px;
	padding-top: 0px;
  }

.main-article-content {
  width:90%;
  height: auto;
  background-color: transparent;
  max-width: 1024px;
  margin: 0px auto 20px auto;
  /*border-radius: 50px;
  box-shadow: -4px 4px 8px 4px rgba(0, 0, 0, 0.2), -4px 6px 10px 6px rgba(0, 0, 0, 0.19); 
	border-block-start-width: 10px;;
  border-block-end-color: grey;
  border-block-start-color: white;*/
  } 

  .main-article-content p {
	font-size: 21px;
	text-align: left;
	/*padding: 15px 25px 35px 25px;*/
	padding: 10px 25px 10px 25px;
	z-index:100;  
	background-color: transparent;
	border-radius: 50px;
  }

  .main-article-content a {
	font-size: 21px;
	text-decoration:underline;
	text-decoration-color: darkblue;
	
  }

  .main-article-content a:hover {
	color: rgb(61, 61, 206);
	text-decoration-color: rgb(61, 61, 206);
  }

  .main-article-content a:focus {
	
	text-decoration-color: rgba(255,255,255,0);
  }



.main-article-content ul {
	position: relative;

	padding-left: 40px;
	padding-right: 10px;
	padding-bottom: 30px;
}

.main-article-content ul li {
	font-size: 24px;
	text-align:justify;

	z-index:100;  
	background-color: transparent;
	border-radius: 50px;
}

.main-article-content ul li p {
	padding: 5px;
}

.main-article-content ul li a {
	font-size: 21px;
	font-weight: 300;
	text-decoration:underline;
	text-decoration-color: darkblue;
}

  .main-article-content ul li a:hover {
	text-decoration-color: rgb(61, 61, 206);
  }

  .main-article-content ul li a:focus {
	
	text-decoration-color: rgba(255,255,255,0);
  }

.main-article-content ol  {
	font-size: 24px;
	position: relative;
	padding-left: 40px;
	padding-right: 10px;
	padding-bottom: 30px;
}

/*-- COntainer descriptions---- Field descriptions---- Field descriptions---- Field descriptions---- Field descriptions--*/

#call_pro {
	
	width:fit-content;
margin-left: auto;
margin-right: auto;
}



.button_contact {
	
	display: inline-block;
	color: black;
	color: rgb(61, 61, 206);
	font-size: 24px;
	margin-left: 10px;
	margin-right: 10px;
	margin-bottom: 50px;
	height: fit-content;
	width: fit-content;
	padding: 7.5px;
	
	text-align: center;
	text-decoration: none;
	
	cursor: pointer;
	border-radius: 15px;
	border-radius: 5px;
   
   
	/*box-shadow: -2px 2px 4px 2px rgba(0, 0, 0, 0.2), -2px 3px 5px 3px rgba(0, 0, 0, 0.19);*/
  
  background-image: linear-gradient(rgba(222, 233, 237,.1), rgba(255,255,255,.05) 49%, rgba(0,0,0,.05) 51%, rgba(0,0,0,.1));
  border: 2.5px groove rgb(61, 61, 206, 0.9);

  }

  #button_colour {

  background-color:rgba(178, 208, 159, 0.25);
  }
  #button_colour:focus {

	background-color:rgba(53, 70, 42, 0.25);
	}


.twocolumns {
	width: 90vw;
	margin-left: auto;
	margin-right: auto;
	display: block;
	/*grid-template-columns: 50% 50%;*/
	margin-bottom: 10px;
	margin-top: 20px
}

.two-columns .caption-box1 {
	position: relative;
	width: 100%;

	
	
}

.two-columns .caption-box1 img {
	width:100%;
	height: auto;
	margin-left: auto;
	margin-right: auto;
}

#nav-aside {
	display: none;
}


/*--beginning of the footer----beginning of the footer----beginning of the footer----beginning of the footer----beginning of the footer----beginning of the footer----beginning of the footer----beginning of the footer--*/
footer {
	/*margin-top:20em;*/
	height: fit-content;
	z-index:100;
	padding-top: 2em;
	background-color: rgb(56, 58, 60, 1);
}
.footer-content {
	position:relative;
    width: 100vw;
	margin-left: auto;
	margin-right:auto;
	padding-bottom: 1.7em;
}
.footer-social {
	display: inline-block;
	width: 100%;
	list-style-type: none;
	text-align: center;
}
.footer-social li {
	display: inline-block;
	padding: 5px;
	
}
.footer-social li a {
	text-align: center;
	font-size: 16px;
	line-height: 3.5em;
	display: inline-block;
	width: 58px;
	height: 58px;
	text-align: center;
	/*padding: 0px 25px 0px 25px;*/
	/*--border: 2px solid rgba(255,255,255,.3);--*/
	
}

.footer-social li p {
	text-align: center;
	font-size: 16px;
	line-height: 3.5em;
	display: inline-block;
	width: 58px;
	height: 58px;
	text-align: center;
	/*--border: 2px solid rgba(255,255,255,.3);--*/
	
}


.footer-social li a img {
	width: auto;
	height: 58px;
	
}
.footer-social li a .social-hover {
	display: none;
}
.footer-social li a:hover .social-default {
	display: none;
}
.footer-social li a:hover .social-hover {
	display: inline;
}

.footer-row_4 {

		display: block;
		width: 100vw;
		margin-left: auto; 
		margin-right: auto;
	}

.footer-column ul li a {
	padding: 20px 20px 20px 20px;
}

.footer-column h3 {
font-size: 18px;
color: white;

}

.footer-column p {
	font-size: 16px;
	color: white;
	font-weight: 300;
	text-align: justify;
	padding: 10px 15px 10px 15px;
	line-height: 20px;
	}

	

	.footer-column ul li {
		color: white;
		font-size: 16px;
		font-weight: 300;
		list-style: none;
		line-height: 22px;
		margin-left: 50px;
	}

	.footer-column ul li a {
	color: white;
	font-size: 16px;
	}



.footer-info {
	width: 100vw;
	
}

.footer-info-box {
	width:80%;
	margin-top: 30px;
	margin-left:  auto;
	margin-right: auto;
	padding-bottom: 1.5em;
}



.footer-info-box a {
	font-size: 1em;
	color:white;
	font-weight: 300;
	line-height: 1.55em;
	/*max-width: 40em;*/
	text-align: center;
}

.footer-info-box p {
	font-size: 18px;
	color:white;
	font-weight: 300;
	line-height: 1.55em;
	/*max-width: 40em;*/
	text-align: center;
}

.footer-disclaimer {
	font-weight: 300;
	color:white;
}

.reg-address {
	padding-bottom: .2em;
	font-weight: 450;
	letter-spacing: 0.4px
}
.footer-legal {
	opacity: .8;
}
.footer-credit a {
	text-decoration:none;
}

.footer-credit a:hover {
	text-decoration: none;
}















/*Tablet View*/

@media only screen and (min-width: 768px) {
	

	
	


.banner-container {
 position:relative;
 width:100vw;
 height:auto;
 /*margin-top: 20px;*/
 /*height:inherit;*/
    /*height:14em;*/
}
.banner-container {
  margin-left: 0px;
  /*height:inherit;*/
  overflow-y: hidden;
    
} 

.banner-image {
	margin-left: 0px;
	/*height:inherit;*/  
  } 

  .enviro_inter img {
	width: 95%;
	padding-right: 5%;
	top:-20px;
}

.two-columns {
	width: 80%;
	display: grid;
	grid-template-columns: 50% 50%;
	
}

.two-columns .caption-box1 img {
	width: 90%;
	margin-top: 50px;
	margin-left: auto;
	margin-right:auto;
	
	
}

    
/*--End of slideshow----End of slideshow----End of slideshow----End of slideshow----End of slideshow----End of slideshow--*/
	
.main-article .flex-container {
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap:wrap;
	
	width: 100%;
  }
  
  .main-article .flex-container > div {

	margin:0px;
	
	width: 50vw;
	
	
  }	

  

 /*--beginning of the footer----beginning of the footer----beginning of the footer----beginning of the footer----beginning of the footer----beginning of the footer----beginning of the footer----beginning of the footer--*/
footer {
	/*margin-top:20em;*/
	height:fit-content;
	z-index:100;
	padding-top: 2em;
	
}
.footer-content {
	position:relative;
    width: 100%;
	margin-left: auto;
	margin-right:auto;
	padding-bottom: 1.7em;
}
.footer-social {
	display: inline-block;
	width: 100%;
	list-style-type: none;
	text-align: center;
}
.footer-social li {
	display: inline-block;
	margin: 0 1.2em;
}
.footer-social li a {
	line-height: 3.5em;
	display: inline-block;
	width: 58px;
	height: 58px;
	text-align: center;
	/*--border: 2px solid rgba(255,255,255,.3);--*/
	
}
.footer-social li a:hover {
	border-color: #fff;
	background: #fff;
}
.footer-social li a img {
	width: auto;
	height: 58px;
}
.footer-social li a .social-hover {
	display: none;
}
.footer-social li a:hover .social-default {
	display: none;
}
.footer-social li a:hover .social-hover {
	display: inline;
}
.footer-info {
	margin-top:2em;
	margin-left:auto;
	margin-right:auto;
}

.footer-info-box {
	width:100%;
	padding-bottom: 1.5em;
}

.footer-info {
	font-size: 1.05em;
	color:#fff;
	line-height: 1.55;
	
}

.footer-info-box p {
	font-size: 1em;
	color:#fff;
	line-height: 1.55em;
	/*max-width: 40em;*/
	text-align: center;
}

.footer-info-box a {
	font-size: 1em;
	color:#fff;
	line-height: 1.55em;
	/*max-width: 40em;*/
	text-align: center;
}

.reg-address {
	padding-bottom: .2em;
	font-weight: 450;
	letter-spacing: 0.4px
}
.footer-legal {
	opacity: .8;
}
.footer-credit a {
	text-decoration:none;
}

.footer-credit a:hover {
	text-decoration: none;
}
   
	
	

		
		
		
		
		
		
		
		
		
		
/*Desktop View*/
@media only screen and (min-width: 1024px) { 
	
	header {
		position: relative;
		z-index: 1;		
		height: fit-content;
	}	
			
	
		
	.sitenavbanner {
		position: relative;
		width: 100vw;
		height: fit-content;
	} 
	
	.sitenavbanner .logo {
		height: 150px;
	}
	
	

	

	.main-article {
		margin-left: auto;
		margin-right:auto;
		padding-left: 0px;
		width:100vw;
	}
		
	.main-article .flex-container {
		position: relative;
		display: flex;
		flex-direction: row;
		flex-wrap:nowrap;
		
		width: 100%;
	  }
	  
	  .main-article .flex-container > div {
	
		margin:0px;
		
		width: 25vw;
		
		
	  }	

	.banner-width {
		display:block;
		margin-top: 50px;
		width:80vw;
		margin-left: auto;
		margin-right: auto;
	}

	.banner-container .banner-image {
	
		width: 100%;
		height: auto;
	}

	  

	h1 {
		font-size: 50px;

	}
	

	h2 {
		font-size: 36px;
		margin-top:20px;
		letter-spacing: 2.5px;
		letter-spacing: normal;
		text-transform:none;
		font-weight:300;
		text-align: left;
		line-height: 1.2;	
		padding-left: 0px;
		
		
		
	}

	h3 {
		margin-left:0px;
		font-size: 24px;
		text-align: left;
		
		letter-spacing: 0px;
		color:black;
	}

	p {
		font-size:24px;
		width: 80%;
		
	}

	a {
		font-size:22px;
	}
	
	

	
			
		
		
  .ban-con-desk {
	position:relative;
	width:100vw;
	height: 280px;
	z-index: -100;
	overflow: hidden;
    /*z-index: -100;*/ 
   }
      
   .banner-image-desktop {
     margin-left: 0px;
     align-content: center;
     width:100vw;
     /*max-height:300px;*/
     overflow-y: hidden; 
   } 
   
   .banner-text {
     text-align:center;
     color:white;
     font-size: 3em;
     font-weight:300;
     letter-spacing: 2px;
     padding: 8px 12px;
     position: absolute;
     bottom: 5%;
     width: 100%;
     text-align: center;
   }

   

   

   .main-article {
	display:grid;
	grid-template-columns: repeat(12, 1fr);
	grid-auto-rows:minmax(fit-content, auto);
	grid-gap: 10px;
	
	margin: 0 auto;
	
   }

   .main-article-content {
	grid-column: 3/11;
	grid-row: 1/4;
   }

 

   #nav-aside {
	margin-top:20px;
	position: sticky;
	top: 0;
	display:grid;
	
	grid-column: 1/3;
	grid-row: 1/2;
   }

   #nav-aside div h2 {
	color:black;
   }

   #nav-aside .wrapper {
	padding: 10px;
   }

   #nav-aside .wrapper a:hover {
	color:rgb(61, 61, 206);
   }

   #nav-aside div a {
	text-decoration: none;
	line-height: 1.8	;
	color: rgb(20, 20, 160);
	font-weight: 300;
}

   #nav-aside div ul {
	list-style-type: none;
	padding-bottom: 50px;
	margin-left:10px;
   }

   #nav-aside div ul li a {
	   text-decoration: none;
	   line-height: 1.8	;
	   color: rgb(20, 20, 160);
	   font-weight: 300;
   }

   #nav-aside ul li a:hover {
	/*text-decoration: underline;*/
	color:rgb(61, 61, 206);
}

#project-aside {
	margin-top:20px;
	position: sticky;
	top: 0;
	display:grid;
	
	grid-column: 11/14;
	grid-row: 1/2;
   }

   #project-aside div h2 {
	color:black;
   }

   #project-aside .wrapper {
	padding: 0px;
   }

   #project-aside .wrapper h3{
	padding: 0px;
	font-size:24px;
	
   }

   /*#project-aside .wrapper a:hover {
	color:orange;
   }*/

   #project-aside div ul {
	list-style-type: none;
	padding-bottom: 50px;
	margin-left:10px;
	
   }

   #project-aside div ul li {
	   text-decoration: none;
	   line-height: 1.3	;
	   color: rgb(20, 20, 160);
	   font-weight: 300;
	  
	   list-style-type: circle;
   }

   #project-aside div ul li a {
	text-decoration: none;
	
	color: rgb(20, 20, 160);
	font-weight: 300;
	letter-spacing: normal;
	font-size: 20px;
   }

   #project-aside ul li a:hover {
	/*text-decoration: underline;*/
	color:rgb(61, 61, 206);
   }


 
   

  



   .main-article-content {
	box-shadow:none; 
	border-block-start-width:0em;
  	border-block-end-color: none;
  	border-block-start-color: none;
   }


   h1 {
	position: relative;
	grid-column: 1/13;
	grid-row: 1/2;
}

h2 {
	grid-column: 1/13;
	grid-row: 2/2;
}




   .main-article-content p {
	   width: 100%;
	   margin-left: auto;
	margin-right: auto;
	padding: 0;
   }


   .enviro_inter {
	   position: relative;
	   top: -50px;
	
   }
   .enviro_inter img {
	width: 75%;
	padding-left: 10%;
}

	.main-article-content ul {
		padding-top: 0px;
		width: 90%;
		margin-left: 10%;
		margin-right: auto;
		padding: 0px;
		text-align: left;
		

}

/*.circle:before {
	content: ' \25EF';
	font-size: 400px;
	color: red;

  }*/

.main-article-content ul li {
	padding:0px;
	line-height: 1;
}

.main-article-content ul li p {
margin-left: 0px;
margin-right: 0px;
padding: 0px;
line-height: 1.5;
}


.main-article-content ol li {
	font-size: 28px;
	color: #1F19AA;
	font-size: 120%;
	line-height: 36px;
	font-weight: 300;
	padding-bottom: 40px;
}

.main-article-content ul li a:hover {
	color:rgb(61, 61, 206);
}

.button_contact {
	margin: 40px;
	
}



footer {
	/*clear: both;*/
	position: relative;
	bottom: 0vh;
	width: 100%;
	}
   
   .footer-content {
	   width: 100%;
	   margin-left: auto;
	   margin-right:auto;
	   
   }
   .footer-social {
	   display: inline-block;
	   list-style-type: none;
	   text-align: center;
   }
   .footer-social li {
	   display: inline-block;
	  
   }
   .footer-social li a {
	   line-height: 3.5em;
	   display: inline-block;
	   width: 4vh;
	   height: 4vh;
	   text-align: center;
	   /*--border: 2px solid rgba(255,255,255,.3);--*/
	   
   }
 
   .footer-social li a img {
	   width: auto;
	   height: 4vh;
   }
   .footer-social li a .social-hover {
	   display: none;
   }
   .footer-social li a:hover .social-default {
	   display: none;
   }
   .footer-social li a:hover .social-hover {
	   display: inline;
   }
   .footer-info {
	font-size: 1em;
	color:#fff;
	   margin-left:auto;
	   margin-right:auto;
   }
   
   .footer-info-box {
	   width:50%;
	   margin-left:auto;
	   margin-right:auto;
	
   }
	  
   .footer-info-box p {
	   font-size: 1.5vh;
	   
	   line-height: 1.55em;
	   /*max-width: 40em;*/
	   text-align: center;
   }
   
   .reg-address {
	   
	  
	   letter-spacing: 0.4px
   }
   .footer-legal {
	   opacity: .8;
   }
   .footer-credit a {
	   text-decoration:none;
   }
   
   .footer-credit a:hover {
	   text-decoration: none;
   }

   
  

   .footer-row_4 {
	display: grid;
	grid-template-columns: 25% 25% 25% 25%;
	height: fit-content;
	
	margin-left: none;
	
	
		}
	
	




/*Desktop View*/  

@media screen and (min-width: 1650px) { 
  
	
	
/*.main-article {
	max-width: 1400px;
}*/



.main-article-content ul li {
	line-height: 2;	
}
	
/********************************************************/
	.main-article {
		margin-left: none;
		margin-right: none;
		width: 100vw;
		max-width: 100vw;
		height: fit-content;
		} 
	
		.main-article .flex-container {
			position: relative;
			display: flex;
			
			
			width: 100%;
		  }
		  
		  .main-article .flex-container > div {
		
			margin:0px;
			
			width: 25vw;
			
			
		  }	

		  .main-article .flex-container > div div {
			z-index:10;
			width: fit-content;
			margin-left: auto;
			margin-right: auto;
			height: fit-content;
			margin-top: auto;
			margin-bottom:auto;
			padding: 20px 20px 20px 20px;
						
			
			
		  }

		  .main-article .flex-container > div div p {
			font-size: 22px;
			padding-left: 40px;
			padding-right: 40px;
		  }

		  .main-article .flex-container > div div h2 {
			font-size: 30px;
			text-align: center;
			margin-top:0px;
			padding-top: 0px;
		  }
	  

	  
	
	   
		
	
		}
	
	
	}
}
