@import url('https://fonts.googleapis.com/css?family=Poppins:300,400,500,600,700&display=swap');
:root {
 --main-dk-gray:#2a2f33;
 --main-dk-blue:#00167a;
	--main-highlite-green:#239e07;
	--main-graytext:#e8e4df;
}

*{
  margin: 0;
  padding: 0;
  /* user-select: none; */
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
}
body{
  background: #fff;
}
h1, h2, h3, h4, h5{display: inline;
	margin: 0;
    padding: 0;
}
h1{
	line-height: 70px;
}

.maincontainer {
	padding: 0px;
	border: 0;
	max-width: 1400px;
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
}
.full-img {
	padding:0;
	position:relative;
	overflow:hidden;
}
.full-img img {
	position:absolute;
	left:0;
	top:0;
	min-width:100%;
	min-height:100%;
	width:auto;
	height:auto;
}
.hr {
    display: block;
    height: 20px;
    border: 0;
    border-top: 1px solid #ccc;
	width: 100px;
}
.floatleft {
  float: left;
  margin: 0px 20px 10px 0;
}
.service-center{
	text-align: center;
}
/*  ---------shrink image -----        */
.shrink-img { width: 100%; height: 100%;  position:relative; }
.shrink-img img { 
 position:absolute;
 top:0;
 left:0;
 bottom:0;
 right:0;
 margin:auto;
 max-width:100%;
 max-height:100%;
}
.landscape { 
 width:100%;
}
.portrait { 
 height:100%
}
/*  ---------shrink image end -----        */
.clearer{
	clear:both;
}
.navcontainer{
	background: #fff;
}
.bannercontainer{
	background: #fff;
}
.floatleft{
	float: left;
	padding: 5px 10px;
}
.floatright{
	float: right;
	padding: 5px 10px;
}
nav{
  background: #fff;
}
nav:after{
  content: '';
  clear: both;
  display: table;
}
nav .logo{
  float: left;
  color: #000;
  padding-left: 60px;
}
nav .logo img{
  width:250px;
}
nav ul{
  float: right;
  margin-right: 40px;
  list-style: none;
  position: relative;
	z-index: 7;
}
nav ul li{
  float: left;
  display: inline-block;
  background: #fff;
  margin: 20px 5px;
}
nav ul li:hover{
  background-color: #fff;
}
nav ul li a{
  color: #353535;
  line-height: 70px;
  text-decoration: none;
  font-size: 15px;
  padding: 50px 25px;
	font-weight: 500;
	text-transform: uppercase;
}
nav ul li a:hover{
  color: #000;
}
nav ul ul li a:hover{
  box-shadow: none;
}
nav ul ul{
  position: absolute;
  top: 90px;
  border-top: 1px solid #000;
  opacity: 0;
  visibility: hidden;
  transition: top .3s;

}
nav ul ul ul{
  border-top: none;
}
nav ul li:hover > ul{
  top: 70px;
  opacity: 1;
  visibility: visible;
}
nav ul ul li{
  position: relative;
  margin: 0px;
  width: 150px;
  float: none;
  display: list-item;
  border-bottom: 1px solid rgba(0,0,0,0.3);
	padding: 10px 0;
}
nav ul ul li a{
	line-height: 12px;	
	font-size: 13px;
	font-weight: 300;
	display:flex;
	padding: 10px 5px;
	
}
nav ul ul ul li{
  position: relative;
  top: -60px;
  left: 150px;
	
}
.show,.icon,nav input{
  display: none;
}
.fa-plus{
  font-size: 15px;
  margin-left: 40px;
}


.grid1{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	padding-bottom: 20px;
	
}
.divcentered{
	text-align: center;
	outline: 2px solid #cccccc;
	padding: 5px;
}
.icons{
	font-size: 150px;
	color: #00167a;
}
.service-icons{
	font-size: 80px;
	color: #00167a;
	
}
.iconsgreen{
	font-size: 150px;
	color:var(--main-highlite-green);
	text-align: center;
}
.fasquare{
	font-size: 40px;
	color: var(--main-dk-blue);
}
.main-whole-column{
	padding: 0 10px 20px 10px;
}
/*     ---------------banner---------------  */
.banner{
	background-image: url(../images/building.jpg);
	background-repeat: no-repeat;
	background-size: contain;
	position: relative;
    width: 100%;
 	height: 550px; 
 	  overflow: hidden;
 
}
.bannertext{
	padding: 100px 0 0 30px;
}
.bt1{
	font-size: 30px;
	font-weight: 300;
}
.bt2{
	padding-top: 10px;
	font-size: 60px;
	line-height: 0.9;
}
.bt3{
	padding-top: 10px;
	font-size: 25px;
	font-weight: 300;
}
.bannerbtn{
	padding-top: 20px;
	justify-items: center;
	display: grid;
	grid-template-columns: 1fr 1fr 4fr;
	
}
.btn1 a{
font-weight: 500;
  background-color: var(--main-dk-blue);
  border: solid #707070 1px;
  color: #ffffff;
	text-transform: uppercase;
  padding: 16px 36px;
  text-align: center;
  font-size: 16px;
  margin: 4px 2px;
  transition: 0.3s;
	text-decoration: none;
}

.btn1 a:hover {
  background-color: var(--main-highlite-green);
 
}
.btn2 a{
	font-weight: 500;
	border: solid var(--main-dk-gray) 1px;
	color: #000;
	text-transform: uppercase;
	padding: 16px 36px;
	text-align: center;
	font-size: 16px;
	margin: 4px 2px;
	transition: 0.3s;
	text-decoration: none;
}

.btn2 a:hover {
  background-color: var(--main-highlite-green);
	color: #ffffff;
}
/* --------------------Banner------------   */

.banner-services{
	background-image: url(../images/construction-material-metal.jpg);
	background-repeat: no-repeat;
	
	position: relative;
    width: 100%;
 	height: 300px; 
 	  overflow: hidden;
	background-size: cover;
	margin-bottom: 50px;
 
}
.banner-services-text{
	padding: 50px 0 0 30px;
	color:#fff;
}
.banner-services-text div{
	padding: 20px 0 0 0;
}
.banner-services h1{
	line-height: 20px;
}

.banner-fed{
	background-image: url(../images/construction-machinery-crane.jpg);
	background-repeat: no-repeat;
	position: relative;
    width: 100%;
 	height: 500px; 
 	overflow: hidden;
	background-size: cover;
	margin-bottom: 50px;
 
}
.banner-fed-text{
	padding: 50px 0 0 30px;
	color:#000;
}
.banner-fed-text div{
	padding: 20px 0 0 0;
	display: grid;
	grid-template-columns: 2fr 5fr;
	gap: 10px 20px;
	
}
.banner-fed h1{
	line-height: 20px;
}
.grayfull{
	background-color: var(--main-dk-gray);
	color:#fff;
	padding: 20px 0;
}
.bluefull{
	background-color: var(--main-dk-blue);
	color:#fff;
	padding: 20px 0;
}
.foot-gray{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	padding-bottom: 20px;
	color: var(--main-graytext);
}

.foot-gray h3{
	line-height:60px;
	font-size: 27px;
}

.foot-gray a{
	color:var(--main-fontgray);
	text-decoration: none;
}
.foot-gray a:hover{
	color:#fff;
	
}
.logo-white{
	background-color: #fff;
	width:250px;
	padding: 5px;
}
.about{
	padding:0 15px;
	
}
.aboutheading{
	text-align: center;
	font-size: 26px;
	font-weight: 700;
}
.aboutgrid{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	padding-bottom: 20px;
	display: flex;
}
.btnabout a{
	display: flex;
	justify-content:center;
font-weight: 500;
  background-color: var(--main-dk-blue);
  border: solid #707070 1px;
  color: #ffffff;
	text-transform: uppercase;
  padding: 8px 20px;
  text-align: center;
  font-size: 14px;
  margin: 20px 2px;
  transition: 0.3s;
	text-decoration: none;
	
}
.btn3 a{
	
font-weight: 500;
  background-color: var(--main-dk-blue);
  border: solid #707070 1px;
  color: #ffffff;
	text-transform: uppercase;
  padding: 8px 20px;
  text-align: center;
  font-size: 14px;
  margin: 20px 2px;
  transition: 0.3s;
	text-decoration: none;
	
}
.btn3 a:hover {
  background-color: var(--main-highlite-green);
 
}
.ab2{
	padding-bottom: 20px;
}
.aboutbutdiv{
 	align-self: end;
	text-align: center;
}
.btnabout a:hover {
  background-color: var(--main-highlite-green);
 
}
.sec4-1-1-1-grid{
	display: grid;
	grid-template-columns: 4fr 1fr 1fr 1fr;
	gap: 10px 20px;
	
}
.sec1-4-1-grid{
	display: grid;
	grid-template-columns: 1fr 4fr 1fr;
	gap: 10px 20px;
	
}
.sec3-3-grid{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 10px 20px;
	
}
.sec3-3-grid div{
	text-align: center;
}
.sec3-3-grid div a{
	text-decoration: none;
	color: var(--main-dk-blue);
}
.sec3-3-grid div a:hover{
	color: var(--main-dk-gray);
}
.sec3-1-grid{
	display: grid;
	grid-template-columns: 3fr 1fr;
	gap: 10px 20px;
	
}
.sec2-1-grid{
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 10px 20px;
	
}
.sec2-1-grid h2, .sec1-1-grid h2{
	line-height: 70px;
	
}
.sec1-6-grid{
	display: grid;
	grid-template-columns: 1fr 6fr;
	gap: 20px 20px;
	padding-bottom: 50px;
}
.sec1-6-grid h3{
	line-height: 50px;
	
}
.sec1-1-grid{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 50px 20px;
}
.sec1-1-grid h2 a{
	text-decoration: none;
    color:#000;
}
.sec1-1-grid h2 a:hover{
	text-decoration: none;
    color:var(--main-dk-gray);
}

.sec1-3-grid{
	display: grid;
	grid-template-columns: 1fr 3fr;
	gap: 50px 20px;
}
.sec-full{
	padding: 30px 0;
	
}
.sec-full-center{
	padding: 30px 0;
	display: flex;
	align-items: center;
	flex-direction: column;
}

.sec-full ul  {
   padding: 10px 0;
 
}
.sec-full ul li {
   padding: 5px;
  margin-left: 35px;
}
.sec1-1-grid ul  {
   padding: 10px 0;
 }
.sec1-1-grid ul li {
   padding: 5px;
  margin-left: 35px;
}
.fullwidth-img img{
	width: 100%;
}
.eightywidth-img img{
	width: 80%;
	display: block;
  margin-left: auto;
  margin-right: auto;
}
.service16-icons{
	text-align: center;
	display: flex;
  align-items: center;
  justify-content: center;
	
}
.stacked-images{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
	gap: 50px 20px;
	
}
.stacked-images img{
	width:100px;
	padding: 0px;
	
}

.contactform input[type="text"]{
	background-color: var(--main-graytext);
    color: #000;
    width: 100%;
	font-size: 30px;
	border-width: 0;
}
.contactform textarea{
	width: 100%;
	font-size: 30px;
	background-color: var(--main-graytext);
	border-width: 0;
}
.contactform .submitbtn{
	  background-color: var(--main-dk-blue);
	  color: #fff;
	  padding: 10px 30px;
	  border-width: 0;
	  font-size: 20px;
}
@media all and (max-width: 1400px) {
nav ul li a{
    font-size: 16px;
  	padding: 4px 8px;
}
nav .logo{
  font-size: 18px;
  padding-left: 20px;
}
.icons{
	font-size: 7vw;
}
.fasquare{
	font-size: 2vw;
}
/*     ---------------banner---------------  */
.banner{
	width: 100%;
	height: 39vw;
}
	
.bannertext{
	padding: 4vw 0 0 2vw;
}
.bt1{
	font-size: 2.5vw;
}
.bt2{
	padding-top: 1vw;
	font-size: 4.2vw;
	
}
.bt3{
	padding-top: 1vw;
	font-size: 1.8vw;
}
.bannerbtn{
	padding-top: 2vw;	
}
.btn1 a{
  padding: 1.5vw 3vw;
  font-size: 1vw;
  margin: .4vw .2vw;
}

.btn2 a{
	padding: 1.5vw 3vw;
  font-size: 1vw;
  margin: .4vw .2vw;
}

/* -------------------- End Banner------------   */
}


@media all and (max-width: 968px) {
	
 nav ul{
    margin-right: 0px;
    float: left;

  }
  nav .logo{
    padding-left: 30px;
    width: 100%;
	  font-size: 28px;
  }
  .show + a, nav ul{
    display: none;
  }
  nav ul li,nav ul ul li{
    display: block;
    width: 100%;
	  padding: 0px 5px;
	  margin: 0px 0px;
	 
  }

  nav ul li a:hover{
    box-shadow: none;
	  
  }
nav ul ul li a{
font-size: 20px;
}
nav ul li a{
	padding: 0px 0px;
	margin: 0 0;
	font-size: 30px;
	}

.show{
    display: block;
    color: #000;
   font-size: 30px;
    padding: 10px 0px;
    line-height: 50px;
    cursor: pointer;
	text-transform: uppercase;
	
  }
  .show:hover{
    color: cyan;
  }
.icon{
    display: block;
    color: #000;
    position: absolute;
    top: 0;
    right: 40px;
    line-height: 70px;
    cursor: pointer;
    font-size: 25px;
  }
  nav ul ul{
    top: 70px;
    border-top: 0px;
    float: none;
    position: static;
    display: none;
    opacity: 1;
    visibility: visible;
	  
  }
  nav ul ul a{
    padding-left: 40px;
  }
  nav ul ul ul a{
    padding-left: 80px;
  }
  nav ul ul ul li{
    position: static;
  }
  [id^=btn]:checked + ul{
    display: block;
  }
  nav ul ul li{
    border-bottom: 0px;
  }
  span.cancel:before{
    content: '\f00d';
  }
	
.icons{
	font-size: 150px;

}
.fasquare{
	font-size: 30px;
}
	h1{
		font-size: 26px;
	}
	/*     ---------------banner---------------  */
.banner{
	width: 100%;
	height: 400px;
	background-size: auto 100%;
    background-position: center top;
}
	
.bannertext{
	padding: 10px 0 0 10px;
}
.bt1{
	font-size: 25px;
}
.bt2{
	padding-top: 10px;
	font-size: 40px;
	
}
.bt3{
	padding-top: 10px;
	font-size: 22px;
}
.bannerbtn{
	padding-top: 20px;
	grid-template-columns: 1fr 1fr;	
}
.btn1 a{
	padding: 16px 36px;
	font-size: 16px;
	margin: 4px 2px;
}

.btn2 a{
	padding: 16px 36px;
	font-size: 16px;
	margin: 4px 2px;
}

/* -------------------- End Banner------------   */
	
.grid1{
	grid-template-columns: 1fr;
}	
.foot-gray{
	display: grid;
	grid-template-columns: 1fr;
	padding-left: 12px;

}
.bluefull{
	padding-left: 12px;
}
	

.full-img img {
	position:relative;
	
}	
.sec3-1-grid, .sec1-6-grid, .sec1-1-grid, .aboutgrid, .sec1-3-grid{
	grid-template-columns: 1fr;
	
	display: block;
}	

.eightywidth-img img{
	width: 200px;

}
.shrink-img { width: 100%; height: 100%;  position:relative; }
.shrink-img img { 
 position:relative;
 top:0;
 left:0;
 bottom:0;
 right:0;
 margin:auto;
 max-width:100%;
 max-height:100%;
}
.sec3-3-grid{
	
	grid-template-columns: 1fr 1fr ;
	gap: 10px 20px;
	
}
.btn3 a{
	
  padding: 8px 20px;
  font-size: 12px;
  margin: 20px 2px;

	
}
	.sec-full-center img{
width:80%;
}
.maincontainer {
	padding: 0px 15px;
	
}
	
}

