@charset "utf-8";
@import url("//fonts.googleapis.com/css?family=Montserrat:100,200,300,400,500,600,700,800,900|Roboto:300,400,500,600,700,800,900");
/* COMMON */
body{
	font-size: 18px;
	font-family: 'Montserrat', arial, tahoma, sans-serif;
	font-weight: 300;
	line-height: 30px;
	padding: 0;
	margin: 0;
	color: #000;	
	position: relative;
	word-break: normal;	
	background-color: #fff;
	text-rendering: optimizeLegibility !important;
	-webkit-font-smoothing: antialiased !important;	
}
html,
body {
	margin:0;
	padding:0;
	height:100%;
}
a:link,
a:visited{
	color:#000000;
	text-decoration:none;
	outline: none;
}
a:hover{
	color: #666666;
}
.text-justify{
	text-align: justify;
}
.text-color{
	color: rgba(219,102,62,1) !important;
}
.mgt30{
	margin-top: 30px;
}
.mgt40{
	margin-top: 40px;
}
.mgt50{
	margin-top: 50px;
}
.mgt60{
	margin-top: 60px;
}
.mgt70{
	margin-top: 70px;
}
.sm-line{
	position: relative;
	display: block;
}
.text-lg{
	font-size: 20px;
	line-height: 32px;	
}
.text-x-lg{
	font-size: 30px;
	line-height: 45px;	
}
h2.title{	
	font-size: 36px;
    font-weight: 800;	
    color: #010000;
	margin-top: 0;
    margin-bottom: 30px;	
	line-height: 45px;
}
h3.title{	
	font-size: 30px;
    font-weight: 800;
	line-height: 30px;
    color: #010000;
    margin-bottom: 20px;
	margin-top: 0;
}
h3.title.line{
	padding-bottom: 25px;
	position: relative;
	margin-bottom: 50px;
}
h3.title.line:after{
	content: "";
	display: block;
	width: 150px;
	height: 6px;
	background-color: rgba(219,102,62,1);
	position: absolute;
	bottom: 0;
}
hr.split{
	border-top-color: #b9b9b9;
	margin: 90px 0;
}
.bg-cover {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 50% 50%;
}
.navbar-toggle{
	margin-right: 0;
	margin-top: 20px;
	border: 0px solid #999;
    border-radius: 0;
	padding: 6px 5px;
}
.navbar-toggle .icon-bar{
	background-color: #000;
}
.back-link a{
	text-transform: uppercase;
    font-size: 14px;
    font-weight: 700;
}
.page-title{
	font-size: 37px;
    font-weight: 700;
	color: #293d62;
	margin-top: 50px;
	line-height: 50px;
}
.page-description{
	font-size: 28px;
    font-weight: 300;
    line-height: 37px;
	color: #666;	
	margin-bottom: 70px;
    margin-top: 20px;
}
.page-description.quote .quote-name{
	margin-top: 5px;
	font-size: 18px;
	font-weight: 400;
}
.page-description.quote .quote-name span{
	color: #000;
    font-weight: 700;
}
.page-description.bol{
	font-weight: 500;
	color: #000;
}
#page-id{
	width: 100%;
    float: left;
	margin: 70px 0 100px 0;
}
i.ico{
	display: block;
	background: url(../images/arr.png) no-repeat;
	display: inline-block;
}
i.ico.arr{
	background: url(../images/arr.png);
	height: 12px;
	width: 33px;
}
.btn{
	background-color: rgba(104,31,31,1);
	border: 0;
	border-radius: 0;	
}
button.btn,
a.btn{
	color: #fff !important;
	font-size: 18px;
	font-weight: 700;
	line-height: 30px;
	padding: 12px 50px 12px 30px;
}
button.btn,
a.btn:hover{
	color: #fff !important;
}
button.btn,
a.btn .arr{
	margin-right: 10px;
}
.img img{
	width: 100%;
	max-width: 100%;
}
.section {
    position: relative;
	overflow: hidden;
}
.section-content{
    width: 1074px;
    margin: auto;
}
.two-column-content{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	padding-bottom: 100px;
	color: #fff;
}
.two-column-content .text-content {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc(50%);
    flex: 0 0 calc(50%);
    position: relative;
    padding: 50px 50px 50px 20px;
    z-index: 1;
}
.two-column-content .text-content:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 200%;
    height: 100%;
    background: rgba(0,24,68,0.93);
    z-index: 0;	
}
.two-column-content .box {
    position: relative;
}
.two-column-content .img-content{
    position: relative;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc(50%);
    flex: 0 0 calc(50%);
	left: -200px;
	z-index: -1;
}
.two-column-content .img-content img{
    -o-object-position: center;
    object-position: center;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    max-height: 100%;
    min-height: 100%;
    width: 245%;
    top: 100px;
}
.two-column-content .box-quote .icon-quote{
	height: 80px;
}
.two-column-content .box-quote h2.quote{
	font-family: arial, tahoma, sans-serif;
	font-size: 196px;
	line-height: 120px;
	color: #47a9f4;
	opacity: 0.2;	
}
.two-column-content .box-quote .name{
	margin-top: 40px;
	font-style: italic;
}
.two-column-content .box-quote .name strong{
	font-style: normal;
}
.two-column-content .box-quote .logo{
	margin-top: 40px;
}
/* SLIDER */
.owl-theme .owl-dots .owl-dot span {
    border-radius: 0;
    margin: 0 3px;
}
.owl-carousel{
	touch-action: manipulation;
}
/* HEADER */
#header-bar{
	height: 102px;
	box-sizing: border-box;
	background-color: rgba(255,255,255,0.83);
	z-index: 2;
	position: relative;
	margin-bottom: -130px;
}
#header-bar:after{
	position: absolute;
	content:"";
	bottom:-9px;
	right: 0;
	left: 0;
	z-index: 1;
	height: 9px;
	background-color: rgba(255,255,255,1)
}
#header-bar .company-logo{
	position: absolute;
	top: 20px;
	display: block;	
	z-index: 2;
}
#header-bar .company-logo img{
	max-height: 70px;
}
#header-bar.fixed{
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 999999;
	height: 70px;
	background-color: rgba(255,255,255,0.93);
	box-shadow: 0 0 15px 0 rgb(0 0 0 / 25%);
}
#header-bar.fixed .company-logo{
	top: 8px;
}
#header-bar.fixed .company-logo img{
	max-height: 55px;
}
#header-bar.fixed #top-menu{
	top: 10px;
}
#top-menu{
	position: absolute;
	top: 30px;
	right: 0;
	z-index: 3;
}
#top-menu .dropdown.open,
#top-menu .dropdown.hover,
#top-menu .dropdown.hover a{
	background-color: transparent;
}
#top-menu .navbar-nav>li{
	padding: 8px 15px;
}
#top-menu .navbar-nav>li>a{
	font-size: 16px;	
	font-weight: 700;
	color: #000;
	text-transform: uppercase;	
	padding: 8px 2px;	
	line-height: 25px;
	box-sizing: border-box;
	position: relative;
	font-family: 'Montserrat', arial, tahoma, sans-serif;
}
#top-menu .navbar-nav>li>a:hover{
	color: #000 !important;
}
#top-menu .nav .open>a,
#top-menu .nav .open>a:hover,
#top-menu .navbar-nav>li>a:hover{	
	background-color: transparent !important;
	color: #000 !important;
}
#top-menu .nav .open>a:focus,
#top-menu .navbar-nav>li>a:focus{
	background-color: transparent;
}
#top-menu .dropdown-menu{
	padding: 0;
	margin: 0;	
	left: 18px;
	top: 50px;
	right: auto;
	border: 0;
	border-radius: 0;
	min-width: 227px;
	background-color: rgba(0,24,68,0.84);
}
#top-menu .dropdown-menu a{
	color: #fff;
	font-size: 15px;
	font-weight: 500;
	text-transform: none;
	padding: 10px 12px;
}
#top-menu .dropdown-menu li{
	border-bottom: 0;
}
#top-menu .dropdown-menu li:last-child{
	border-bottom: 0;
}
#top-menu .dropdown-menu a:hover,
#top-menu .dropdown-menu a:focus{
	background-color: rgba(255,255,255,0.1);
	color: #fff;
}
#wrap-content{
	width: 100%;
	float: left;
}
/* FOOTER */
#footer-bar{	
	padding: 18px 0 18px 0;
	font-size: 12px;
	font-weight: 400;
	color: #8a8a8a;
	line-height: 20px;
	width: 100%;
	float:left;
	box-sizing: border-box;
	background-color: rgba(66,66,66,1);	
	font-family: 'Montserrat', arial, tahoma, sans-serif;
}
#footer-bar .row{
	display: flex !important;
	align-items: center;
}
#footer-bar img.logo{
	height: 35px;
	margin-right: 15px;
	position: relative;
	top: -2px;
}
#footer-bar.bdt{
	border-top: 1px solid #f0f0f0;
}
#footer-bar .licenses{
	color: #fff;
}
#footer-bar  a{
	color: #fff;
}
#footer-bar  a.linkedin{
	background-color: #b1b1b1;
	padding: 3px 5px;
	border-radius: 2px;
	color: rgba(0,0,0,0.74);
	margin-left: 5px;
}
#footer-bar  a.facebook{
	background-color: #b1b1b1;
	padding: 3px 7px;
	border-radius: 2px;
	color: rgba(0,0,0,0.74);
	margin-left: 5px;
}

/* BANNER */
.banner{
	background-color: #f8f8f8;
	min-height: 645px;
	position: relative;
	color: #fff;
	width: 100%;
	float: left;	
	z-index: 0;
}
.banner .page-desc{
	position: absolute;
	left: 0;
	bottom: -23px;	
	background-color: rgba(0,24,68,0.84);
	padding: 10px 80px 10px 100px;
}
.banner .page-desc h4{
	font-family: 'Montserrat', arial, tahoma, sans-serif;
	font-size: 24px;
	font-weight: 700;
	text-transform: uppercase;
}
.banner .page-desc .text{
	color: #fff;
	font-weight: 600;
	font-size: 75px;
	line-height: 80px;
}
.banner.contact-us{
	background-image: url(../images/banner/contact-us.jpg);
}
.banner.about-us{
	background-image: url(../images/banner/about-us.jpg);
}
.banner.safety{
	background-image: url(../images/banner/safety.jpg);
}
.banner.leadership{
	background-image: url(../images/banner/leadership.jpg);
}
.banner.services{
	background-image: url(../images/banner/services.jpg);
}
.banner.portfolio{
	background-image: url(../images/banner/portfolio.jpg);
}
.banner.photos{
	background-image: url(../images/banner/photos.jpg);
}
#home-carousel {
	box-sizing: border-box;
	height:100%;
	min-height: 1170px;
}
#home-carousel .item {
	height:100%;
	position: relative;
	min-height: 1170px;
}
#home-carousel .item .text {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 15%;
}
#home-carousel .item .text .slogan{
	width: 50%;
	background-color: rgba(0,24,68,0.84);
	padding: 10px 25px;
}
#home-carousel .owl-dots{
	position: absolute;
    bottom: 30px;
    left: 0;
    right: 0;
}
#home-carousel h1{	
	font-size: 65px;
	font-weight: 600;
	margin-bottom: 0;
	margin-top: 0;
	padding: 10px 0;
}
#home-carousel h1+.desc{	
	font-size: 30px;
	font-weight: 600;
	margin-top: 20px;
}
#home-carousel .te-block{
	background: rgba(86,0,0,0.85);
	text-align: center;
	margin-top: 50px;
}
#home-carousel .te-block a{
	display: inline-block;
	position: relative;
	z-index: 0;	
	padding-top: 18px;
	padding-bottom: 18px;
	color: #fff;
	text-align: center;
	font-size: 22px;
	font-weight: 600;
	line-height: 25px;
	outline: none;	
	background-color: transparent !important;
	box-sizing: border-box;
}
#home-carousel .te-block a:hover{
    background-color: rgba(211,60,0,0.9)
}
#home-carousel .te-block .clearfix{
	display: none;
}
/* HOME PAGE */
#home-page .email{	
	font-weight: 700;
	margin-top: 30px;
}
#home-page .email a{
	color: #c81f44;
	font-weight: 800;
}
#home-page .email .fa{
	color: #c81f44;
	font-size: 35px;
	position: relative;
	top: 5px;
	margin-right: 10px;	
}
#home-page #text-content .two-column-content{
	color: initial;
	margin-top: 70px;
	padding-bottom: 0;
}
#home-page #text-content .two-column-content .img-content{
	left: 0;
}
#home-page #text-content .two-column-content .img-content img{
	width: 100%;
	object-fit: contain;
	object-position: left;
	top: 40px;
	min-height: auto;
}
#home-page #text-content .two-column-content .text-content{
	-ms-flex: 0 0 calc(60%);
    flex: 0 0 calc(60%);
}
#home-page #text-content .two-column-content .img-content {
    -ms-flex: 0 0 calc(40%);
    flex: 0 0 calc(40%);
}
#home-page #text-content .two-column-content .text-content:before{
	background: transparent;
}
#home-page #text-content strong{
	font-size: 24px;
	font-weight: 700;
}

#home-page #contact{
	margin-bottom: 100px;
}
/* CONTACT US */
#contact-us-page .content{
	font-size: 20px;
	font-weight: 400;
	margin-top: 10px;
}
#contact-us-page .map{
	border-top: 4px solid #d0d0d0;
	border-bottom: 4px solid #d0d0d0;
}
#contact-us-page select.form-control,
#contact-us-page input.form-control{
	height: 50px;
	border-radius: 6px;
}
#contact-us-page .page-description{
	margin-bottom: 10px;
}
#contact-us-page h2.sub-title{
	font-weight: 700;
	font-size: 32px;
}
#contact-us-page h2.sub-title+.desc{
	font-weight: 400;
	font-size: 23px;
	margin-bottom: 70px;
}
#contact-us-page form .form-control.error {
    border-color: #de0d0d;
}
/* SERVICES */
#services-page h3.title{
	margin-top: 30px;
	font-size: 22px;
}
#services-page #page-id ul{
	margin: 40px 0 50px 0;
	padding: 0;
	list-style: none;
}
#services-page #page-id ul li {
    position: relative;
    padding: 2px 0 2px 20px;
    line-height: 28px;
	font-size: 18px;
	font-weight: 400;
	color: #333;
}
#services-page #page-id ul li:before {
    content: "";
    width: 7px;
    height: 7px;
    display: block;
    background-color: #000;
    position: absolute;
    left: 0;
    top: 10px;
}
#services-page section.contact{
	margin-top: 100px;
}
#services-page .actions a{
	margin-right: 15px;
	margin-bottom: 5px;
}
#services-page .actions a:last-child{
	margin-right: 0;
}
/* LEADERSHIP */
#leadership-page .item{
	margin: 40px 0;	
}
#leadership-page .item img {
    width: 100%;
}
#leadership-page .item .name{
	font-size: 22px;
	font-weight: 700;
	margin-top: 30px;
	margin-bottom: 0px;
	line-height: 1.3;
}
#leadership-page .item .sta{
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 5px;
	line-height: 1.2;
}
#leadership-page .item .position{
	font-size: 17px;
	font-weight: 500;	
	color: #666;
	line-height: 1.25;
}
/* PORTFOLIO */
#portfolio-page h3.title{
	margin-top: 0;
}
#portfolio-page .container-fluid .row.project{
	margin-bottom: 50px;
	background-color: #e8e8e8;
}
#portfolio-page .container-fluid .row.project.first{
	background-color: #000;
	color: #fff !important;	
}
#portfolio-page .container-fluid .row.project.first h3{
	color: #fff !important;
}
#portfolio-page .container-fluid .row.project.first a{
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	z-index: 1;
	color: #fff;	
	align-items: center;
	justify-content: center;
	display: flex;
}
#portfolio-page .container-fluid .row.project.first a .fa{
	font-size: 45px;
	color: #fff;
	opacity: 0;
}	
#portfolio-page .container-fluid .row.project.first a:hover:before{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	background-color: rgba(0,24,68,0.54);
	-webkit-transition: all 0.3s ease-in-out 0s;
	-moz-transition: all 0.3s ease-in-out 0s;
	transition: all 0.3s ease-in-out 0s;
	z-index: 1;
}
#portfolio-page .container-fluid .row.project.first a:hover .fa{	
	opacity: 1;
	z-index: 2;
}	
#portfolio-page .container-fluid .row.project a{
	display: block;
}
#portfolio-page .container-fluid .row.project a:hover{
	color: initial;
}
#portfolio-page .container-fluid .row.project>a>div{
	padding-left: 0 !important;
	padding-right: 0 !important;
	min-height: 400px;
}
#portfolio-page .eq-item div.img{
	display: none;
}
#portfolio-page .container-fluid .row.project .text{
	width: 100%;
	padding: 50px;
	box-sizing: border-box;
	font-size: 20px;
	font-weight: 600;
	line-height: 30px;
}
#portfolio-page .container-fluid .row.project .text .desc{
	font-weight: 400;
	font-size: 18px;
}
#portfolio-page .container-fluid .row.project .text .sub-info{
	margin-bottom: 20px;
	padding-left: 20px;
}
#portfolio-page .more-info{
	margin-top: 20px;
	margin-bottom: 70px;
	color: #666;
	font-size: 22px;
	font-weight: 500;
	line-height: 35px;
}
#portfolio-page .more-info .actions{
	margin-top: 30px;
}
#portfolio-page .more-info .actions a{
	margin: 0 20px;
}
#portfolio-page .listing-logo{
	margin-bottom: 0;
}
#portfolio-page #page-id ul{
	margin: 0;
	padding: 0;
	list-style: none;
}
#portfolio-page #page-id ul li {
    position: relative;
    padding: 2px 0 2px 20px;
    line-height: 28px;
	font-weight: 300;
}
#portfolio-page #page-id ul li:before {
    content: "";
    width: 7px;
    height: 7px;
    display: block;
    background-color: #666;
    position: absolute;
    left: 0;
    top: 10px;
}
#portfolio-page .photo-items>div{
	margin-bottom: 10px;	
}
#portfolio-page .photo-items img{
	width: 100%;
}
/* ABOUT */
#about-us-page hr.split{
	border-top-color: #000;
	margin-bottom: 20px;
}
#about-us-page .about-company{
	padding: 100px 0 100px 0;
	background: url(../images/w-logo.png) #dedede no-repeat 97% center;
	background-size: 40% auto;
	font-size: 24px;
	font-weight: 400;
	position: relative;
	line-height: 1.5;
}
#about-us-page .about-company a.btn{
	margin-top: 50px;
}
#about-us-page .our-project{
	padding: 70px 0 0 0;
	background-color: #fff;
	position: relative;
}
#about-us-page .our-services{
	padding: 50px 0 0 0;
}
#about-us-page .our-lst{
	padding: 50px 0 100px 0;
}
#about-us-page .our-lst .icon{
	background-color: #979797;
	display: inline-block;
	width: 53px;
	height: 53px;
	text-align: center;
	border-radius: 4px;
	color: #fff;
	font-size: 30px;
	line-height: 53px;
	position: absolute;
	left: 0;
	top: 0;
}
#about-us-page .our-lst h3.sub-title{
	font-size: 18px;
	font-weight: 800;
	margin-top: 0;
}
#about-us-page .our-lst .item{
	margin: 30px 0;
}
#about-us-page .our-lst .box{
	font-size: 14px;
	line-height: 1.7;
	position: relative;
	padding-left: 70px;
}
/* PHOTO PAGES */
#photos-page .col{
	width: 20%;
	float: left;
}

#contact-us-page .info {
	text-align: center;
}