  * { margin:0; padding:0; box-sizing:border-box; -webkit-box-sizing:border-box; }
body { font-family: 'Montserrat', sans-serif; font-size:14px; line-height:24px; color:#000; font-weight: 400; }
h1, h2, h3, h4, h5, h6, h7 { line-height:120%; padding:0; font-weight:normal; margin-bottom:0px; color:#000; font-family: 'Montserrat', sans-serif; /* font-family: 'DM Serif Display', serif; */ font-weight: 600; }
h5, h6, h7 { font-family: 'Montserrat', sans-serif; font-weight: 600; letter-spacing: 0px; }
.space-line {  width:100px; height:1px; background-color:#c25e03; display:block; margin:10px 0 20px 0;}
.space-line.center { margin: 10px auto 20px; }
.space-after { margin-bottom: 20px;}
.space-after-50 { margin-bottom: 50px;}
.space-tb { margin:10px 0;}
h1 { font-size:56px; padding-bottom:10px;}
h1.clear { margin: 0; padding: 0; line-height: 60px;}
h2 { font-size:50px; }
h3 { font-size:42px; }
h4 { font-size:34px; }
h5 { font-size:22px; }
h6 { font-size:16px; }
.clear-float { clear:both;}
.clear-ul { margin:0; padding:0; list-style:none;}
a { text-decoration:none; color:inherit; transition:all ease-in-out 0.3s; -webkit-transition:all ease-in-out 0.3s;}
p { margin-bottom:10px;}
.text-links { color:#c25e03;}
.text-links:hover, .text-links.active { color:#005CFF;}
.box-links { background-color:#06F; color:#fff; display:inline-block; padding:5px 15px;}
.box-links:hover { background-color:#000; }
img { max-width:100%; margin:0; padding:0; font-size:0; display:block;}
.full-img { width: 100%; }
.text-center { text-align: center; justify-content: center; }
.text-left { text-align: left; justify-content: flex-start; }
.text-right { text-align: right; justify-content: right; }
ul { margin: 0; padding: 0; list-style: none;}
ul li { padding-left: 25px; position: relative;}
ul li:before { content: "\f0d1"; font-family: FontAwesome; font-size: 13px; color: rgb(0 0 0 / 50%); position: absolute; left: 0; top: 0px;}
ul.clear-ul li { padding-left: 0;}
ul.clear-ul li:before { display: none;}

ul.styled-ul li:before { content: "\f007"; }

.styled-table { width: 100%; border:none; }
.styled-table td, .styled-table th {  border: solid 1px rgb(0 0 0 /10%); padding:10px; text-align: left; vertical-align: top;}

.styled-table tr:nth-child(2n) { background-color: rgb(0 0 0 / 5%); }
.styled-table thead { background-color:#c25e03; color:#fff; }
.spl-text { color: #c25e03; }
section { position: relative; overflow: hidden;}
.wrapper-1000 { width:1000px; margin:0 auto; position:relative;}
.wrapper-1200 { width:1200px; margin:0 auto; position:relative;}
.wrapper-90p { width:95%; margin:0 auto; }
.border-1 { border:solid 1px #555; }

.flex-box, .mob-flex-box, .flex-box-720 { display: flex; align-items: center; flex-wrap: wrap; justify-content:center; }
.flex-5 div { width: 16%; flex-grow: 1;}
.flex-4 div { width: 24%; flex-grow: 1;}
.flex-3 div { width: 32.33%; }
.flex-2 div { width: 45%; flex-grow: 1;}
.flex-1 div { width: 100%; flex-grow: 1;}
.block-2 { width:50%; flex-grow:1; }
.block-3 { width:33.33%; flex-grow:1; }
.block-3 { width:33.33%; flex-grow:1; }
.block-66 { width:66.66%; flex-grow:1; }
.block-75 { width:75%; flex-grow:1; }
.block-5 { width:20%; flex-grow:1; }
.flex-content-top { align-items: flex-start;}
.flex-box.reverse { flex-direction: row-reverse; }
.flex-reset-height { align-items: normal; }
.flex-box.no-grow div, .flex-box.no-grow .block-2, .flex-box.no-grow .block-3, .flex-box.no-grow .block-4, .flex-box.no-grow .block-5 { flex-grow:0; }

.extra-padding { padding:8% 10%; display: block;}
.extra-padding-rl { padding: 0 10%; }
.extra-padding-tb { padding:8% 0%;}
.extra-padding-top { padding-top:8%;}
.mid-padding { padding:4% 5%;}
.mid-padding-rl { padding:0% 5%;}
.mid-padding-tb { padding:4% 0%;}
.low-padding { padding:2% 3%;}
.low-padding-rl { padding:0% 3%;}
.low-padding-tb { padding:2% 0%;}
.fix-padding-20 { padding:20px;}
.fix-padding-tb-20 { padding:20px 0;}
.padding-bottom-0 { padding-bottom:0; }

footer { padding : 30px; background-color:#5b5b5b; color: #fff;}
.footer-text { padding: 20px 0;}
.footer-social-icons { margin-left: auto;}
.social-icon { width:35px; line-height: 35px; margin: 0 3px; font-size: 20px; text-align: center; display: block; background-color: #ffa706; border-radius: 50%; color: #000;}

header { background-color: #fff; z-index: 999;  position: sticky; top: -150px; transition: all ease-out 0.3s;}
header.scrolled { box-shadow: 0 1px 8px rgb(0 0 0 / 10%); top: 0;}
.logo { display: block; width:150px; padding:20px 0;}
/* header.scrolled .logo { width: 140px; padding: 5px 0;} */
.main-menu-wrapper { margin-left:auto; transition: all ease-out 0.3s; }
.main-menu-wrapper.off { transform: translateX(0%); }
.menu-icon {width:50px; height:50px; position: absolute; left:-50px; top:10px; display: none;}
.menu-icon span {width:70%; height:2px; top:50%; left:15%; position:absolute; display: block; margin: 0 auto; background-color: rgb(0 0 0 / 50%); transform-origin: center center; transition: all ease-out 0.3s;}
.menu-icon span.one { transform:translateY(-10px); }
.menu-icon span.two {}
.menu-icon span.three { transform:translateY(10px); }
.menu-icon.off span.one {transform:rotate(45deg) translateY(0);}
.menu-icon.off span.three {transform:rotate(-45deg) translateY(0);}
.menu-icon.off span.two {opacity:0;}
.main-menu { text-transform:uppercase; }
.main-link { padding: 10px 15px; display: inline-block; transition: all ease-out 0.3s;}
.main-link:after { content: ""; width: 20%; height: 1px; background-color: #c25e03; display: block; margin: 5px 0 0 0; transform: scale(0,1); opacity: 0; transition: all ease-out 0.3s; transform-origin: left; }
.main-link:hover, .main-link.active { color: #c25e03; }
.main-link:hover:after, .main-link.active:after { transform: scale(1,1); opacity: 1; width: 30px; }
.main-dd-parent:after { content:"\f107"; font-family: fontAwesome; transform:translateX(-12px); display: inline-block;}
.sub-link-ul { position:absolute; left: 0; top:150%; width:200px; background-color: #fbfbfa; padding: 20px 0; opacity: 0;  transition: all ease-out 0.3s; visibility: hidden; }

/* .main-menu-ul li:hover .sub-link-ul { height:auto; padding :20px 0px; opacity: 1; } */
.main-menu-ul li:hover .sub-link-ul { top:100%; opacity: 1; visibility: visible; }
.sub-link { padding: 12px 20px; display: block; border-bottom: solid 1px rgb(0 0 0 /5%); font-size: 12px;}
.sub-link-ul li:last-child .sub-link { border:none;}
.sub-link:hover, .sub-link.active { color:#c25e03;}

.child-link-ul { position: absolute; left: 100%; top:20px; width:200px; background-color: #fbfbfa; padding: 20px 0; opacity: 0;  transition: all ease-out 0.3s; visibility: hidden;}
.sub-link-ul li:hover .child-link-ul { top:0; opacity: 1; visibility: visible; }
.sub-dd-parent:after { content:"\f105"; font-family: fontAwesome; position: absolute; right: 8px; top: 10px;}
.child-link { padding: 12px 20px; display: block; border-bottom: solid 1px rgb(0 0 0 /5%); font-size: 12px;}
.child-link-ul li:last-child .child-link { border:none; }
.child-link:hover, .child-link.active { color:#c25e03;}

.text-60p { font-size: 60%; }

.owl-dots { position:absolute; left:70%; bottom:40px; padding-left:40px; width:28%;}
.owl-dot span { width: 10px; height:10px; background-color: #fff; border:solid 2px #fff; display:block; border-radius: 50%; margin: 3px; }
.owl-dot.active span { background: none;  }
.owl-nav { position:absolute; top:50%; width: 100%;}
.owl-next { position:absolute; right:0;}
.owl-prev span, .owl-next span {width:40px; height:40px; line-height: 37px; font-size: 35px; text-align: center; background-color:#ffa706; display: block; left: 0; transition: all ease-out 0.3s;}
.owl-next span { right:0; left: auto;}
.owl-prev:hover span, .owl-next:hover span { width:60px;}

.owl-item { overflow: hidden; }
.owl-item img { transition: all ease-in 7.5s; transform:scale(1); }
.owl-item.active img { transform:scale(1.15);}

.banner-text { width: 30%; padding: 0 0 0 40px; background-color: rgb(0 0 0 / 50%); color:#fff; position:absolute; right:0; top:0; height:100%; display: flex; align-items: center; }
.banner-text * { color:#fff;}
.bg-grey-box-80p { position:absolute; background-color: #f5f4f3; width: 50%; height:75%; display: block; left: 0; bottom: 0; z-index: -1;}
.home-abl-about { /*padding-top:10%;*/ max-height: 560px; overflow: auto;}
.home-abl-about p {text-align: justify;}

.read-more { font-size: 15px; padding: 10px 0; font-weight: 600; margin-top: 20px; display: inline-block; transition: all ease-out 0.3s;}
.read-more:hover { padding: 10px 30px; background-color: #ffa706; }
.read-more.snap { margin-top: 0; }
.light-grey-bg { background-color: #efece7; }
.grey-bg { background-color:#5b5b5b; }
.grey-bg * { color: #fff; }
.home-projects .home-project-box { border:solid 1px #000; border-radius: 10px; margin: 0.5%; overflow: hidden; position: relative; }
.home-projects .home-project-box img { width:100%; }
div.home-projects-text { position: absolute; width:100%; height: 100%; left: 0; top:0;  background-color: rgb(255 255 255/ 70%); display: flex; align-items: center; flex-direction: column; padding-top:30px; transition: all ease-out 0.5s; opacity: 0; padding: 0 10px; }
div.home-projects-text:hover { opacity: 1;}
.home-verticals .block-3 { position: relative; }
.home-verticals .block-3 img { width:100%; }
.verticals-text { position:absolute; width:100%; height:100%; left:0; top:0; background-color: rgb(0 0 0 /70%); display: flex; align-items: center; justify-content: center; transition: all ease-out 0.5s; opacity: 0; }
.verticals-text * { color: #fff;}
.verticals-text:hover { opacity: 1; }
.home-performance .block-4 {margin: 20px 0px; text-align: center;}
.home-performance .block-4 img { margin: 0 auto; }
.branches-all .block-4 { position: relative; }
.branches-all .block-4:after { content:""; width:1px; height:150px; background-color: #ffa706; position:absolute; right: 0; top:20px;}
.branches-all .block-4:last-child:after { display: none; }
.branches-logo { width:170px; margin: 0 auto 10px auto;}
.award-box { margin-bottom:30px; background-color: rgb(0 0 0 /5%); }

.bod-bg:before { content:""; position: absolute; height:100%; width:30%; left:0; top:0; z-index: -1; background-color: #5b5b5b; }
.bod-text .spl-text { letter-spacing: 5px; text-transform: uppercase;}
.bod-text { width:60%;}
.bod-img { width:40%; }
.bod-img img { width:100%;}
.highway-bg { background:url(/images/highway-bg.jpg) center center no-repeat; background-size:cover;}
.highway-bg-box * { color:#fff; }
.csr-bg  { background:url(/images/csr-bg.jpg) center center no-repeat; background-size:cover;}

.accordian-box .read-more {margin-top:0;}
.accordian-box { margin: 10px 0; }
.acco-que { padding:20px; background-color: #5b5b5b; color:#fff; cursor: pointer; }
.acco-que * { color:#fff;}
.acco-ans { padding:20px; background-color: #f5f4f3; display: none;}
.acco-ans li { padding:10px 0; border-bottom:solid 1px rgb(0 0 0 / 20%); }

/* form */
.form-ul { text-align: left; }
.form-ul li { margin-bottom: 10px;}
.form-ul li.half { width: 49%; margin-right: 2%; float: left; }
.form-ul li.third { width: 32%; margin-right: 2%; float: left; }
.form-ul li.half.no-margin, .form-ul li.third.no-margin { margin-right: 0; }

.form-field {width:100%; padding: 10px; font-family: inherit; background: none; border: solid 1px rgb(0 0 0 / 30%); box-sizing: border-box; background-color: #fff;}
.form-field.select { position:relative; padding-right:30px;}
.form-field.select:after { content:"\f107"; font-family: "fontAwesome"; position:absolute; width: 30px; height:100%; right: 0; top: 0; display:block; background-color: #c25e03; color:#fff;}
.form-btn { padding:10px 20px; background-color: #ffa706; color:#000; border: solid 1px #ffa706; cursor: pointer; border-radius: 10px; transition: all ease-out 0.3s;}
.form-btn:hover { background-color: #5b5b5b; border-color: #5b5b5b; color: #fff;}

.large-icon { font-size: 70px; margin:0 auto 10px auto; display:block; color:rgb(0 0 0 / 20%); transition: all ease-out 0.3s; }
.download-link { position: relative; display: block; padding-left:40px; text-align: left; }
.download-link:hover .large-icon { color:rgb( 0 0 0/ 30%); transform: translateY(-10px); }
.jobs-wrapper .mid-padding { position: relative; /* padding-left: 200px; */ background-color: rgb(0 0 0 / 5%); margin-bottom:20px; transition: all ease-out 0.3s;}
.jobs-wrapper .mid-padding:hover { box-shadow: 0px 5px 10px rgb(0 0 0/ 20%); }
/*.jobs-wrapper .mid-padding-tb:before { content:"\f2b5"; font-family: fontAwesome; font-size: 90px; color:rgb(0 0 0/ 10%); position: absolute; left: 40px; top: 50%; transform: translateY(-50%); }*/
.download-links-wrapper .block-5, .download-links-wrapper .block-4, .download-links-wrapper .block-3, .download-link { background-color: rgb(0 0 0 / 5%); }
.download-links-wrapper .block-5 a, .download-links-wrapper .block-4 a, .download-links-wrapper .block-3 a { display:block; }
.download-link:hover { background-color: rgb(194 94 3 / 15%); }

.download-link-box { margin:5px; }
.download-link {width:100%; height: 100%; display:block;}
.download-link:before {content:"\f1c1"; font-family: fontAwesome; font-size: 15px; color:#fff; background-color: #c25e03; position:absolute; height: 100%; left: 0; top:0; padding:5px 7px; box-sizing: border-box; }

.list-download-icon {}
.subs-list .read-more { margin-left: 20px;}

.projects-wrapper { margin-bottom: 30px; }
.projects-img { }
.projects-text { background-color: rgb(0 0 0 /5%); }
.ppp-bg { background: url("/images/ppp-bg.jpg") center center no-repeat; background-size: cover;}
.epc-bg { background: url("/images/epc-bg.jpg") center center no-repeat; background-size: cover;}
.power-bg { background: url("/images/power-bg.jpg") center center no-repeat; background-size: cover;}
.railway-bg { background: url("/images/railway-bg.jpg") center center no-repeat; background-size: cover;}
.building-bg { background: url("/images/buildings-bg.jpg") center center no-repeat; background-size: cover;}
.citygas-bg { background: url("/images/citygas-bg.jpg") center center no-repeat; background-size: cover;}
.investors-bg  { background:url("/images/investors-bg.jpg") center center no-repeat; background-size:cover;}

.job-bullets { width: 30%; }
.job-bullets ul li { margin-bottom: 15px; }
.job-bullets ul li .fa-fw { color: #c25e03; font-size: 120%; width: 20px; text-align: center; }
/*.job-bullet-title { width: 40%; display: inline-block; }
.job-bullets ul li strong { width :60%; display: inline-block; }*/
.job-description { width: 65%; }
.job-gutter { width: 5%; }

.contact-flex-wrapper div { border:solid 1px rgb(255 255 255/ 10%); padding:30px 20px;}
.awards-list {}
/*.awards-list div { background-color:rgb(0 0 0 / 10%); margin:10px; position: relative; text-align: center; }
.awards-list div:after { content:""; width:100%; height:100%; border:solid 2px rgb(91 91 91); display: block; position:absolute; left:4px; top:4px; pointer-events: none; transition: all ease-out 0.1s; }*/
.awards-list div { margin:20px 0.5%; position: relative; text-align: center; border: solid 2px #c25e03; border-radius: 15px; display: flex; flex-direction: column; justify-content: center; }
.awards-list div:before { content: "\f091"; display: block; position: absolute; width:75px; height:40px; background-color: #fff; color:#c25e03; left: -10px; top: -3px; pointer-events: none; transition: all ease-out 0.1s; font-family: 'FontAwesome'; font-size: 55px; }
/* .awards-list div:before { content:""; width: 60px; height:80px; background: url("/images/award-badge.png") center top no-repeat; background-size: contain; position:absolute; left: -10px; top: -10px; transform: rotate(-10deg); z-index: 11; } */
/* .awards-list div:before { content:"\f005 \f005 \f005"; font-family: fontAwesome; color:#F3C200; font-size: 30px; position:absolute; left: 50%; transform: translate(-50%, -50%); bottom:0; z-index: 10; } */
.qhse-approach img { max-width: 150px; margin: 0 auto 10px; }
.qhse-approach-item { padding: 25px; border-radius: 20px; box-shadow: 5px 5px 5px rgb(0 0 0 / 10%); border: solid 1px rgb(0 0 0 / 20%); width: 30%; margin: 1.5%; }

@media screen and (max-width:1250px){
	.wrapper-1200 { width:95%;}
}
@media screen and (max-width:1000px){
	.wrapper-1000 { width:95%;}
	.flex-box { display:block;}
	.block-2, .block-3, .block-4, .block-4, .block-66, .block-75 { width:100%;}
	.qhse-approach-item { width: 95%; margin: 20px auto; }
	footer { text-align: center; }
	.mob-hide { display:none;}
	.abl-office img { margin:0 auto;}
	.home-abl-about { width:600px; margin:0 auto;}
	.home-projects .home-project-box { margin :0 3px;}
	.branches-all .block-4:after { width:100px; height: 1px; position: static; display:block; margin:20px auto;}
	.logo { margin: 0 auto;}
	.main-menu-ul { text-align:center; justify-content: center;}
	.award-box { max-width: 400px; width: 100%; margin: 0 auto 20px auto;}
	.bod-img, .bod-text { max-width: 400px; margin: 0 auto; text-align: center; width: 100%;}
	.bod-bg:before { display:none; }
	.styled-table td, .styled-table th { display: block;}
	.styled-table td span { display: block; }
	.styled-table tr { margin-bottom:20px; display:block; }
	
	.flex-5 div, .flex-4 div, .flex-3 div, .flex-2 div { width: 100%;}
	.download-link { padding-left: 40px !important;}
	
	.home-abl-about { max-height: 100%; overflow: visible; }
	h2 {  }
}

@media screen and (max-width:720px){
	body {font-size:13px;}
	.menu-icon { display:block;}
	.main-menu-wrapper.off { transform: translateX(100%); }
	.wrapper-1000 { width:95%;}
	.flex-box-720 { display:block;}
	.block-2, .block-3, .block-4, .block-5 { width:100%;}
	.main-menu-wrapper { position:fixed; width:85%; height:100%; right:0; top:0; background-color: rgb(255 255 255 /97%); padding:20px 0; }
	.main-menu { height:100%; overflow: auto;}
	.main-link { padding: 15px 0; display: block;}
	.main-dd-parent:after { position:absolute; right: 20px; top:15px;}
	.sub-link-ul, .child-link-ul { position:relative; width:100%; top:0; background-color: #e0e0e0; display: none; transition: none; left:0; }
	.child-link-ul { background-color:#c9c9c9; }
	.main-link:hover:after, .main-link.active:after { margin:10px auto;}
	.home-projects .home-project-box { margin: 30px 0; border-radius: 0; border:none; width:100%; }
	.home-performance-wrapper { text-align: center;}
	.home-performance-wrapper img { margin: 10px auto;}
	.home-performance .block-3:after {content:""; width:100px; height:1px; display: block; margin: 20px auto; background-color: #888888;}
	.home-performance .block-3:last-child:after { display:none;}
	.home-abl-about { width:95%;}
	.verticals-text {height: auto; bottom:0; top:auto; opacity:1; padding:10px;}
	div.home-projects-text { opacity:1; height:auto; position:relative; padding: 20px 10px;}
	.bg-grey-box-80p { display: none;}
	.banner-text {position:relative; width:100%; text-align: center; padding:10px; display: block; background: none;}
	.banner-text * { color:#000;}
	h1 { font-size:32px;}
	h2 { font-size:30px;}
	h3 { font-size:25px; }
	h4 { font-size:24px; }
	h5 { font-size:20px; }
	h6 { font-size:15px;  }
	
	.jobs-wrapper .mid-padding-tb:before { display:none;}
	.jobs-wrapper .mid-padding-tb { padding: 30px;}
	.space-line { display:inline-block; }
	.download-links-wrapper .block-4, .download-links-wrapper .block-3 { margin: 10px 0;}
	.owl-dots { position: relative; left: 0; bottom: 0; width: 100%; text-align: center; padding: 0; }
	.owl-dot span { background-color:#c25e03; border-color: #c25e03; }
	
	.extra-padding { padding:15% 10%; }
	.extra-padding-tb { padding:15% 0%; }
	.extra-padding-top { padding-top:15%; }
	.mid-padding { padding:10% 7%; }
	.mid-padding-rl { padding:0% 7%; }
	.mid-padding-tb { padding:10% 0%; }
	.low-padding { padding:5% 3%; }
	.low-padding-rl { padding:0% 3%; }
	.low-padding-tb { padding:5% 0%; }
	.fix-padding-20 { padding:20px; }
	
	.download-links-wrapper .block-5, .download-links-wrapper .block-4, .download-links-wrapper .block-3 { margin: 10px 0; }
	
	.owl-item.active img { transform:scale(1.05);}
}