*
{
	margin:0;
	padding:0;
}
img
{
	max-width:100%;
	height:auto;
}
h1, h2, h3, h4, h5, h6, p
{
	margin:0;
	padding:0;
}
ul, li, ol
{
	margin:0;
	padding:0;
	list-style-type:none;
}
a, a:hover, a:focus
{
	text-decoration:none;
	border:0;
	outline:0;
}
body
{
	font-family: 'Poppins', sans-serif;
	font-size:18px;
	font-weight:normal;
	font-style:normal;
	line-height:32px;
	color:#868A8D;
}
.headerbannersec
{
	background:url(../images/lftpath.png) no-repeat left top;
	background-size: 40% auto;
}
.headersec
{
	width:100%;
	overflow:hidden;
	padding-top:20px;
}
.headersec .navbar
{
	padding:0;
}
.navbar-brand
{
	padding:0;
	margin:0;
	max-width:223px;
}
.headersec ul.navbar-nav li a
{
	padding:0 20px !important;
	color:#373C42;
	font-family: 'Oswald', sans-serif;
	text-transform:capitalize;
	font-size:20px;
	font-weight:normal;
}
.headersec ul.navbar-nav li a:hover, .headersec ul.navbar-nav li a.active
{
	color:#DE2022;
}
.headersec a.contactbut
{
	border:0;
	outline:0;
	padding:0;
	background:url(../images/contact-us.png) no-repeat left top;
	background-size:100% 100%;
	width:167px;
	height:50px;
	line-height:50px;
	color:#DE2022;
	text-transform:uppercase;
	font-family: 'Oswald', sans-serif;
	font-size:17px;
	font-weight:bold;
}
a.contactbut:hover
{
	color:#000;
}
.bannersec
{
	width:100%;
	overflow:hidden;
	margin:100px 0 0;
}
.bannersec .row
{
	align-items:center;
}
.bannercontlist
{
	position:relative;
	padding:15px 0 0;
	width:100%;
	overflow:hidden;
	margin:0 0 25px 0;
}
.bannercontlist:before
{
	content:"";
	position:absolute;
	left:0;
	top:0;
	z-index:1;
	width:40px;
	height:3px;
	background:#DE2022;
}
.bannercontlist .sglelist
{
	color:#373C42;
	font-family: 'Oswald', sans-serif;
	line-height:normal;
	font-size:24px;
	font-weight:bold;
	float:left;
	position:relative;
	padding: 0 0 0 20px;
    margin: 0 0 0 12px;
}
.bannercontlist .sglelist:before
{
	content:"";
	position:absolute;
	left:0;
  	top: 50%;
  	-ms-transform: translateY(-50%);
  	transform: translateY(-50%);
	z-index:1;
	width:8px;
	height:8px;
	background:#373C42;
	border-radius:50%;
	-moz-border-radius:50%;
	-webkit-border-radius:50%;
}
.bannercontlist .sglelist:first-child
{
	margin:0;
	padding:0;
}
.bannercontlist .sglelist:first-child:before
{
	display:none;
}
.bannersec .container
{
	position:relative;
}
.bannersec h1
{
	font-weight:bold;
	font-size:50px;
	line-height:1.2;
	color:#373C42;
}
a.learnmore
{
	display:inline-block;
	width: 167px;
    height: 50px;
    line-height: 50px;
	text-align:center;
	color:#fff;
	font-family: 'Oswald', sans-serif;
	font-weight:bold;
	font-size:18px;
	text-transform:uppercase;
	background:url(../images/button.png) no-repeat left top;
	background-size:100% 100%;
	margin:40px 0 0;
}
.rytbannerpart
{
	width:100%;
	overflow:hidden;
	position:relative;
	background:url(../images/Grungy_Text.png) no-repeat center top;
	background-size:100% auto;
}
.rytbannerpart img
{
	max-width:80%;
	float:right;
}
.bodysec
{
	width:100%;
	overflow:hidden;
}
.fstcontsec
{
	width:100%;
	overflow:hidden;
	padding:100px 0;
}
.fstcontsecimg
{
	width:100%;
	/*height:100%;*/
	position:relative;
}
.fstcontentarea
{
	background:url(../images/since2006.png) no-repeat center top;
	background-size:100% auto;
	padding:60px 30px 0 30px;
}
.fstcontentarea h2
{
	color:#373C42;
	font-size:50px;
	font-weight:bold;
	font-family: 'Oswald', sans-serif;
	padding:0 0 30px 0;
}
a.fstcontbutton
{
	border:0;
	outline:0;
	padding:0;
	background:url(../images/contact-us.png) no-repeat left top;
	background-size:100% 100%;
	width:167px;
	height:50px;
	line-height:50px;
	color:#DE2022;
	text-transform:uppercase;
	font-family: 'Oswald', sans-serif;
	font-size:17px;
	font-weight:bold;
	display:inline-block;
	margin:25px 0 0;
	text-align:center;
}
a.fstcontbutton:hover
{
	color:#000;
}
.sndcontsec
{
	width:100%;
	overflow:hidden;
	padding:100px 0;
	background:url(../images/cranes-seaport.jpg) no-repeat left top;
}
.sndcontsec h2
{
	text-align:center;
	font-size:50px;
	line-height:normal;
	color:#373C42;
	font-weight:bold;
	font-family: 'Oswald', sans-serif;
}
.sndcontsec .col-lg-6
{
	margin-top:50px;
}
.servicesec
{
	width:100%;
	height:100%;
	position:relative;
}
.servicesec:before
{
	content:"";
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	z-index:1;
	background:rgba(0,0,0,0.4);
}
.servicesec h3
{
	position: absolute;
  	top: 50%;
  	-ms-transform: translateY(-50%);
  	transform: translateY(-50%);
	z-index:2;
	left:0;
	color:#fff;
	text-align:center;
	width:100%;
	font-weight:600;
	font-size:36px;
	line-height:normal;
	text-transform:uppercase;
}
.servicesec a.readmore
{
	position:absolute;
	left:0;
	right:0;
	bottom:80px;
	z-index:2;
	display:block;
	width: 167px;
    height: 50px;
    line-height: 50px;
	text-align:center;
	color:#fff;
	font-family: 'Oswald', sans-serif;
	font-weight:bold;
	font-size:18px;
	text-transform:uppercase;
	background:url(../images/button.png) no-repeat left top;
	background-size:100% 100%;
	margin:0 auto;
	opacity:0;
	transition: all 0.5s ease;
}
.servicesec:hover a.readmore
{
	opacity:1;
}
.thrdcontsec
{
	width:100%;
	overflow:hidden;
	background:url(../images/past-projectbg.jpg) no-repeat center center;
	background-size:cover;
	padding:100px 0;
}
/*.thrdcontsec .row
{
	align-items:center;
}*/
.thrdcontsec img
{
	width:100%;
	height:100%;
	object-fit:cover;
}
a.viewprojectbut
{
	display:inline-block;
	width: 223px;
    height: 60px;
    line-height: 60px;
	text-align:center;
	color:#fff;
	font-family: 'Oswald', sans-serif;
	font-weight:bold;
	font-size:18px;
	text-transform:uppercase;
	background:url(../images/button.png) no-repeat left top;
	background-size:100% 100%;
	margin:40px 0 0;
}
.frtcontsec
{
	width:100%;
	overflow:hidden;
	padding:55px 0 100px 0;
}
.frtcontsec h2
{
	text-align:center;
	color:#D7DEE2;
	font-family: 'Oswald', sans-serif;
	font-weight:bold;
	font-size:200px;
	text-transform:uppercase;
	position:relative;
}
.frtcontsec h2:after
{
	content:"";
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#1e5799+0,ffffff+70,ffffff+100&0+0,1+70,1+100 */
	background: -moz-linear-gradient(top, rgba(30,87,153,0) 0%, rgba(255,255,255,1) 90%, rgba(255,255,255,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, rgba(30,87,153,0) 0%,rgba(255,255,255,1) 90%,rgba(255,255,255,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(30,87,153,0) 0%,rgba(255,255,255,1) 90%,rgba(255,255,255,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001e5799', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
	position:absolute;
	z-index:1;
	left:0;
	bottom:0;
	right:0;
	width:100%;
	height:100%;
}
.hmecontactbg
{
	max-width:100%;
	overflow:hidden;
	box-shadow: 0px 3px 32px #373C421A;
	padding:40px;
}
.inputfield
{
	width:100%;
	border: 1px solid #C7CDD1;
	height:50px;
	padding:0 15px;
	color:#868A8D;
	font-size:18px;
	font-weight:normal;
}
.textareafield
{
	width:100%;
	border: 1px solid #C7CDD1;
	height:200px;
	padding:10px 15px;
	color:#868A8D;
	font-size:18px;
	font-weight:normal;
	line-height:normal;
}
.submitbut
{
	display:inline-block;
	width: 186px;
    height: 50px;
    line-height: 50px;
	text-align:center;
	color:#fff;
	font-family: 'Oswald', sans-serif;
	font-weight:bold;
	font-size:18px;
	text-transform:uppercase;
	background:url(../images/button.png) no-repeat left top;
	background-size:100% 100%;
	border:0;
	outline:0;
}
.footersec
{
	width:100%;
	overflow:hidden;
	background:url(../images/ftrbg.png) no-repeat center center #373C42;
}
.topfootersec
{
	width:100%;
	overflow:hidden;
	padding:70px 0;
}
.ftrlogo
{
	max-width:223px;
}
.ftrsocialsec
{
	width:100%;
	overflow:hidden;
	margin:50px 0 0;
}
.ftrsocialsec ul li
{
	float:left;
	font-size:18px;
	margin:0 0 0 20px;
}
.ftrsocialsec ul li:first-child
{
	margin:0;
}
.ftrsocialsec ul li a
{
	color:#FFFFFF;
	display:block;
}
.topfootersec h2
{
	color:#FFFFFF;
	font-size:24px;
	text-transform:uppercase;
	font-weight:600;
	font-family: 'Oswald', sans-serif;
	padding:0 0 20px 0;
}
ul.ftrlinks li
{
	font-size:18px;
	font-weight:normal;
	line-height:26px;
	text-transform:capitalize;
	font-family: 'Roboto', sans-serif;
	margin-top:15px;
}
ul.ftrlinks li:first-child
{
	margin:0;
}
ul.ftrlinks li a
{
	color:#FFFFFF;
}
ul.contactinfo li
{
	font-size:18px;
	font-weight:normal;
	line-height:26px;
	color:#fff;
	font-family: 'Roboto', sans-serif;
	margin-top:15px;
}
ul.contactinfo li:first-child
{
	margin:0;
}
.topfootersec p
{
	line-height:28px;
	color:#fff;
	padding:20px 0 0;
}
.botfootersec
{
	width:100%;
	overflow:hidden;
	border-top:1px solid rgba(255,255,255,0.2);
	padding:25px 0;
}
.botfootersec p
{
	text-align:center;
	font-family: 'Roboto', sans-serif;
	font-size:17px;
	line-height:normal;
	color:#fff;
	font-weight:normal;
}
.innerbannersec
{
	width:100%;
	overflow:hidden;
	padding:130px 0 0;
}
.innerbannersec .row
{
	align-items:center;
}
.innerbannersec h1
{
	color:#373C42;
	font-size:50px;
	font-weight:bold;
	line-height:normal;
	text-transform:capitalize;
}
.innerbanner
{
	float:right;
	position:relative;
}
.innerbanner:before
{
	content:"";
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:url(../images/zigzag.png) no-repeat left top;
	background-size:100% 100%;
	z-index:1;
}
.innerbanner:after
{
	content: "";
    position: absolute;
    left: 0;
    top: 50%;
  	-ms-transform: translateY(-50%);
  	transform: translateY(-50%);
    width: 75%;
    height: 75%;
    border: 10px solid #F2F3F5;
    z-index: 3;
    margin: 0 auto;
    right: 0;
}
.innerbannertitleimg
{
	position:absolute;
	left:-120px;
	top:-80px;
	z-index:2;
	max-width:51%;
}
.contactpgtitleimg
{
	position:absolute;
	left:-120px;
	top:-40px;
	z-index:2;
	max-width:51%;
}
.fstabtcontsec
{
	width:100%;
	overflow:hidden;
	padding:100px 0;
}
.fstabtcontsec h2
{
	color: #373C42;
    font-size: 50px;
    font-weight: bold;
    font-family: 'Oswald', sans-serif;
    padding: 0 0 25px 0;
}
.fstabtcontsec p
{
	color:#868A8D;
	font-weight:normal;
	padding-bottom:15px;
}
.fstabtcontsec p:last-child
{
	padding:0;
}
.sndabtcontsec
{
	width:100%;
	overflow:hidden;
	background:url(../images/past-projectbg.jpg) no-repeat center center;
	background-size:cover;
	padding:100px 0;
	text-align:center;
}
.sndabtcontsec p
{
	font-family: 'Oswald', sans-serif;
	font-size:44px;
	line-height:65px;
	color:#FFFFFF;
	font-weight:normal;
}
a.abtcontactbut
{
	border:0;
	outline:0;
	padding:0;
	background:url(../images/button.png) no-repeat left top;
	background-size:100% 100%;
	width:223px;
	height:60px;
	line-height:60px;
	color:#fff;
	text-transform:uppercase;
	font-family: 'Oswald', sans-serif;
	font-size:20px;
	font-weight:bold;
	display:inline-block;
	margin:40px 0 0;
}
.fstservcontsec
{
	width:100%;
	overflow:hidden;
	padding:100px 0;
}
.fstservcontsec h2
{
	text-align:center;
	color:#373C42;
    font-size: 50px;
    font-weight: bold;
    font-family: 'Oswald', sans-serif;
    padding: 0 0 25px 0;
}
.fstservcontsec p {
    color: #868A8D;
    font-weight: normal;
	text-align:center;
	max-width:800px;
	margin:auto auto 30px;
}
.servicelist .col-lg-4
{
	margin-top:30px;
}
.sgleservicelist
{
	width:100%;
	height:100%;
	background:#fff;
	box-shadow: 0px 6px 36px #373C4229;
	position:relative;
}
.servicethumb
{
	width:100%;
	height:300px;
	position:relative;
}
.servicethumb img
{
	object-fit:cover;
	width:100%;
	height:100%;
}
.servicedata
{
	padding:20px;
	width:100%;
	overflow:hidden;
}
.sgleservicelist h3
{
	color:#373C42;
	font-size:30px;
	font-weight:bold;
	font-family: 'Oswald', sans-serif;
	padding:0 0 20px 0;
}
.sgleservicelist p
{	max-width:100%;
	line-height:28px;
	text-align:left;
	margin:0;
}
.abtimg
{
	width:100%;
	position:relative;
}
.lftcornerbg
{
	position:absolute;
	left:-33px;
	top:0;
	z-index:1;
	width: 372px;
    height: 100px;
}
.rytcornerbg
{
	position:absolute;
	right:-33px;
	top:0;
	z-index:1;
	text-align:right;
}
.lftcornerpath
{
	position:absolute;
	left:0;
	bottom:0;
	z-index:1;
	max-width:25%;
}
.rytcornerpath
{
	position:absolute;
	right:0;
	bottom:0;
	z-index:1;
	max-width:25%;
}
.sgleservicelist .lftcornerbg
{
	width:300px;
	height:81px;
	left: -27px;
}
.fstcontactsec {
    width: 100%;
    overflow: hidden;
    padding: 100px 0 30px;
}
.fstcontactsec h2
{
    text-align: center;
    color: #373C42;
    font-size: 50px;
    font-weight: bold;
    font-family: 'Oswald', sans-serif;
    padding: 0 0 25px 0;
}
.fstcontactsec p {
    color: #868A8D;
    font-weight: normal;
    text-align: center;
    max-width: 800px;
    margin: 0 auto;
}
.fstcontactsec .col-lg-4
{
	margin-top:60px;
}
.sglecontactsec
{
	box-shadow: 0px 5px 32px #373C421A;
	width:100%;
	height:100%;
	background:#fff;
	padding:40px 15px;
	text-align:center;
}
.iconinfo
{
	height:70px;
	overflow:hidden;
	width:100%;
	margin:auto auto 20px;
}
.iconinfo img
{
	height:100%;
	width:auto;
}
.sglecontactsec p
{
	color:#373C42;
	font-family: 'Roboto', sans-serif;
	font-weight:normal;
	font-size:24px;
	line-height:normal;
}
.fstprojcontsec
{
	width:100%;
	overflow:hidden;
	padding:100px 0 0;
}
.fstprojcontsec h2
{
	text-align:center;
	color:#373C42;
    font-size: 50px;
    font-weight: bold;
    font-family: 'Oswald', sans-serif;
    padding: 0 0 25px 0;
}
.fstprojcontsec p {
    color: #868A8D;
    font-weight: normal;
	text-align:center;
	max-width:800px;
	margin:auto auto 30px;
}
.sgleprojectsec
{
	position:relative;
	width:100%;
	margin: 30px 0 0 0;
}
.projectopacity
{
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
	z-index:1;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#373c42+0,373c42+100&0+0,0.8+100 */
	background: -moz-linear-gradient(top, rgba(55,60,66,0.1) 0%, rgba(55,60,66,0.9) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, rgba(55,60,66,0.1) 0%,rgba(55,60,66,0.9) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(55,60,66,0.1) 0%,rgba(55,60,66,0.9) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00373c42', endColorstr='#cc373c42',GradientType=0 ); /* IE6-9 */
	padding:0 15px;
	opacity:0;
	transition: all 0.5s ease;
}
.vertical-center
{
	position: relative;
  	top: 50%;
  	-ms-transform: translateY(-50%);
  	transform: translateY(-50%);
	z-index:2;
	text-align:center;
}
.sgleprojectsec h3
{
	color:#FFFFFF;
	text-transform:uppercase;
	font-weight:600;
	font-size:34px;
	line-height:normal;
}
.sgleprojectsec a
{
	display:inline-block;
	text-transform:uppercase;
	color:#fff;
	font-size:18px;
	font-family: 'Oswald', sans-serif;
	font-weight:bold;
	margin-top:10px;
}
.sgleprojectsec:hover .projectopacity
{
	opacity:1;
}