@import url('../fonts/Roboto-Bold.ttf');


*{
	margin:0;
   padding: 0;
	box-sizing: border-box;
}
body{
	background: #F8F8F8;
	font-family: 'Roboto';

}
:before,:after{
	box-sizing: border-box;
}
.v-center{
	align-items: center;
}
ul{
	list-style: none;
	list-style-type: none;
	margin:0;
	padding:0;
	font-family: 'Roboto';
}
a{
	text-decoration: none;
	color: #343434;
}
/* header */
.header{
   font-family: 'roboto', sans-serif;
	display: block;
	width: 100%;
	position: relative;
	z-index: 99;
	padding:35px;
   background-color: #F8F8F8;
}
.header .item-left{
	flex:0 0 17%;
}
.header .logo {
	width: 170px;
}
.header .logo img{
	width: 100%;
}
.header .item-center{
	/* flex:0 0 50%; */
}
.header .item-right{
	flex:0 0 17%;
	display: flex;
	justify-content: flex-end;
}
.header .item-right a{ 
     text-decoration: none;
     font-size: 16px;
     color:#555555;
     display: inline-block;
     margin-left: 10px;
     transition: color 0.3s ease;
}
.header .menu > ul > li{
	display: inline-block;
	line-height: 50px;
	margin-left: 25px;
}
.header .menu > ul > li > a{
	font-size: 15px;
	font-weight: 500;
	color:#000000;
	position: relative;
	text-transform: capitalize;
	transition: color 0.3s ease;
}
.header .menu > ul > li .sub-menu{
	position: absolute;
	z-index: 500;
	background-color:#F7C427;
	box-shadow: -2px 2px 70px -25px rgba(0,0,0,0.3); 
	padding: 20px 30px;
	transition: all 0.5s ease;
	margin-top:25px;
	opacity:0;
	visibility: hidden;
}
@media(min-width: 992px){
.header .menu > ul > li.menu-item-has-children:hover .sub-menu{
	margin-top: 0;
	visibility: visible;
	opacity: 1;
}
}
.header .menu > ul > li .sub-menu > ul > li{
	line-height: 1;
}
.header .menu > ul > li .sub-menu > ul > li > a{
	display: inline-block;
	padding: 10px 0;
	font-size: 15px;
	color: #555555;
	transition: color 0.3s ease;
	text-decoration: none;
	text-transform: capitalize;
}
.header .menu > ul > li .single-column-menu{
	min-width: 280px;
	max-width: 350px;
}
.header .menu > ul > li .sub-menu.mega-menu > .list-item > ul > li{
   line-height: 1;
   display: block; 
}
.header .menu > ul > li .sub-menu.mega-menu > .list-item > ul > li > a {
	padding:10px 0;
	display: inline-block;
	font-size: 15px;
	color:#555555;
	transition: color 0.3s ease;
}
.header .menu > ul > li .sub-menu.mega-menu{ 
    left: 50%;
    transform: translateX(-50%);	
}

.header .menu > ul > li .sub-menu.mega-menu-column-4{
  max-width: 1100px;
  width: 100%; 	
  display: flex;
  flex-wrap: wrap;
  padding:20px 15px;
}
.header .menu > ul > li .sub-menu.mega-menu-column-4 > .list-item{
  flex:0 0 25%;
  padding:0 15px;
}
.header .menu > ul > li .sub-menu.mega-menu-column-4 > .list-item .title{
	font-size: 16px;
	font-weight: 500;
	line-height: 1;
	padding:10px 0;
}
.header .menu > ul > li .sub-menu.mega-menu-column-4 > .list-item.text-center .title{
	text-align: center;
}
.header .menu > ul > li .sub-menu.mega-menu-column-4 > .list-item img{
	max-width: 100%;
	width: 100%;
	vertical-align: middle;
	margin-top: 10px;
	height: 300px;
	object-fit: cover;
}
.header .menu > ul > li .sub-menu.mega-menu > .list-item > ul > li > a:hover,
.header .menu > ul > li .sub-menu > ul > li > a:hover,
.header .item-right a:hover,
.header .menu > ul > li:hover > a{
	color:#2EB99B;
}
/* banner section */
.banner-section{
  background-image: url('../img/banner.jpg');
  background-size: cover;
  background-position: center;
  height: 700px;
  width: 100%;
  display: block;
}
.mobile-menu-head,
.mobile-menu-trigger{
	display: none;
}

/*responsive*/
@media(max-width: 991px){

	.header .item-center{
		order:3;
		flex:0 0 100%;
	}
	.map-section{
		display: none;
	}
	
	.v-center{
		justify-content: space-between;
	}
	.header .mobile-menu-trigger{
		display: flex;
		height: 30px;
		width: 30px;
		margin-left: 15px;
		cursor: pointer;
		align-items: center;
		justify-content: center;
	}
	.header .mobile-menu-trigger span{
		display: block;
		height: 2px;
		background-color: #333333;
		width: 24px;
		position: relative;
	}
	.header .mobile-menu-trigger span:before,
	.header .mobile-menu-trigger span:after{
		content: '';
		position: absolute;
		left:0;
		width: 100%;
		height: 100%;
		background-color: #333333;
	}
	.header .mobile-menu-trigger span:before{
		top:-6px;
	}
	.header .mobile-menu-trigger span:after{
		top:6px;
	}
	.header .item-right{
		align-items: center;
	}

	.header .menu{
		position: fixed;
		width: 320px;
		background-color:#ffffff;
		left:0;
		top:0;
		height: 100%;
		overflow: hidden;
		transform: translate(-100%);
		transition: all 0.5s ease;
		z-index: 1099;
	}
	.header .menu.active{
	   transform: translate(0%);	
	}
	.header .menu > ul > li{
		line-height: 1;
		margin:0;
		display: block;
	}
	.header .menu > ul > li > a{
		line-height: 50px;
		height: 50px;
		padding:0 50px 0 15px;
		display: block;
		border-bottom: 1px solid rgba(0,0,0,0.1);
	}
	.header .menu > ul > li > a i{
		position: absolute;
		height: 50px;
		width: 50px;
		top:0;
		right: 0;
		text-align: center;
		line-height: 50px;
		transform: rotate(-90deg);
	}
	.header .menu .mobile-menu-head{
		display: flex;
		height: 50px;
		border-bottom: 1px solid rgba(0,0,0,0.1);
		justify-content: space-between;
		align-items: center;
		position: relative;
		z-index: 501;
		position: sticky;
		background-color: #ffffff;
		top:0;
	}
	.header .menu .mobile-menu-head .go-back{
		height: 50px;
		width: 50px;
		border-right: 1px solid rgba(0,0,0,0.1);
		cursor: pointer;
		line-height: 50px;
		text-align: center;
		color:#000000;
		font-size: 16px;
		display: none;
	}
	.header .menu .mobile-menu-head.active .go-back{
		display: block;
	}
	.header .menu .mobile-menu-head .current-menu-title{
		font-size: 15px;
		font-weight: 500;
		color:#000000;
	}
	.header .menu .mobile-menu-head .mobile-menu-close{
	    height: 50px;
		width: 50px;
		border-left: 1px solid rgba(0,0,0,0.1);
		cursor: pointer;
		line-height: 50px;
		text-align: center;
		color:#000000;	
		font-size: 25px;
	}
	.header .menu .menu-main{
		height: 100%;
		overflow-x: hidden;
		overflow-y: auto;
	}
	.header .menu > ul > li .sub-menu.mega-menu,
	.header .menu > ul > li .sub-menu{
		visibility: visible;
		opacity: 1;
		position: absolute;
		box-shadow: none;
		margin:0;
		padding:15px;
		top:0;
		left:0;
		width: 100%;
		height: 100%;
		padding-top: 65px;
		max-width: none;
		min-width: auto;
		display: none;
		transform: translateX(0%);
		overflow-y: auto;
	}
.header .menu > ul > li .sub-menu.active{
	display: block;
}
@keyframes slideLeft{
	0%{
		opacity:0;
		transform: translateX(100%);
	}
	100%{
	    opacity:1;
		transform: translateX(0%);	
	}
}
@keyframes slideRight{
	0%{
		opacity:1;
		transform: translateX(0%);
	}
	100%{
	    opacity:0;
		transform: translateX(100%);	
	}
}
	.header .menu > ul > li .sub-menu.mega-menu-column-4 > .list-item img{
		margin-top:0;
	}
	.header .menu > ul > li .sub-menu.mega-menu-column-4 > .list-item.text-center .title{
		margin-bottom: 20px;
	}
	.header .menu > ul > li .sub-menu.mega-menu-column-4 > .list-item.text-center:last-child .title{
		margin-bottom:0px;
	}
	.header .menu > ul > li .sub-menu.mega-menu-column-4 > .list-item{
		flex: 0 0 100%;
        padding: 0px;
	}
	.header .menu > ul > li .sub-menu > ul > li > a,
	.header .menu > ul > li .sub-menu.mega-menu > .list-item > ul > li > a{
		display: block;
	}
	.header .menu > ul > li .sub-menu.mega-menu > .list-item > ul {
		margin-bottom: 15px;
	}
	.menu-overlay{
		position: fixed;
		background-color: rgba(0,0,0,0.5);
		left:0;
		top:0;
		width: 100%;
		height: 100%;
		z-index: 1098;
		visibility: hidden;
		opacity:0;
		transition: all 0.5s ease;
	}
	.menu-overlay.active{
	  visibility: visible;
	  opacity:1;	
	}
}


/* hero section */
:root{
   --mainblue: #097DBF;
   --textgray: #666666;
   --darkblue: #38628D;
   --primary: #fff;
   --second: #000000;
   --yellow: #FFD639;
   --cyanbg: #39ACFF;
}
#mainLogo{
   width: 220px;
   height: 43px;

}
#carrousel{

}
.nav-link{
   font-weight: bold;
   text-transform: uppercase;
   color: var(--mainblue) !important;
}
.nav-link:hover {
   color: var(--yellow) !important
}
.MyButton{
   text-align: center;
   display: block;
   text-transform: initial;
   margin-top: 10px;
   padding: 0 30px !important;
   height: 50px;
   line-height: 50px;
   
}
.buttonYellow{
   color: var(--yellow) !important;
   border: 1px solid var(--yellow);
   background-color: rgba(0,0,0,0.3);
}
.buttonWhite{
   color: var(--primary) !important;
   border: 1px solid var(--primary);
}
.MyButton:hover {
   color: #FFF !important;
   border: 1px solid #FFF;
}

#header{
 position: absolute;
 z-index: 999;
 color: var(--mainblue);
 height: 117px;
 background: rgba(255,255, 255, 0.5);
}
#navbarText{
   text-align: center;
   line-height: 55px;
}
#navbarText ul li{
  padding: 0 15px;
}
.show {
   padding: 50px;
   text-align: center;
   background-color: rgba(0,0,0,0.3);
}
.show ul li:hover {

   background-color: rgba(0,0,0,0.3);
}
.carousel-item{
 transform: scale(1);
 max-height: 100vh;
 min-height: calc(100vh-180px);
 overflow: hidden;

}
.sliderTitle{
 font-family: Roboto;
 font-size: 50px;
 display: none;
 top: calc(50vh - height);
 left: -10vw;
 color:white;
 position: absolute;
 transition: all 0.5s;
 background-color: rgba(0,0,0,0.3);
 padding: 5px 15px;
}
.active .sliderTitle{
 display: block;
 top: 50vh;
 left: 10vw;
}
.sliderSubtitle{
 display: none;
 top: 50vh;
 left: -10vw;
 color:white;
 position: absolute;
 transition: all 0.5s;
 background-color: rgba(0,0,0,0.3);
 padding: 5px 15px;
}
.active .sliderSubtitle{
 display: block;
 top: 50vh;
 margin-top: 100px;
 left: 10vw;
}
#carouselExampleIndicators{
 position: relative;

}
.containerVideobg {
 background-color: var(--second);
 position: absolute;
 top: 0px;
 left: 0px;
 z-index: -2;
 padding: 0 !important;
 max-height: 100vh;
 overflow: hidden;
}
.videoSliderBackground{
 margin: 0px;
 padding: 0px;
 width: 100%;
 height: 100%;
 min-width: 100vh;
 min-height: 100vh;
}
.videoSlider{
 margin-left: auto;
 margin-right: auto;
 margin-top: 180px;
 width: 40%;
 transition: all 0.5s;
 border: 10px solid var(--primary);
 background-color: var(--primary);
 box-shadow: 0px 3px 6px rgba(0,0,0,0.3);
}
.elVideo{
 width: 100%;
 height: 100%;
}
.active {
 
}
.active .videoSlider{
 margin-top: 0;
 width: 100%;
 border: none;
 box-shadow: none;
}

/* projects css */
.owl-1 .owl-nav {
	width: 100%;
	position: absolute;
	top: 50%; }
	.owl-1 .owl-nav .owl-next,
	.owl-1 .owl-nav .owl-prev {
	  border: 1px solid red;
	  z-index: 92;
	  position: absolute;
	  top: 50%; }
	  .owl-1 .owl-nav .owl-next:active, .owl-1 .owl-nav .owl-next:focus,
	  .owl-1 .owl-nav .owl-prev:active,
	  .owl-1 .owl-nav .owl-prev:focus {
		outline: none; }
	  .owl-1 .owl-nav .owl-next span,
	  .owl-1 .owl-nav .owl-prev span {
		color: #fff; }
		.owl-1 .owl-nav .owl-next span:before,
		.owl-1 .owl-nav .owl-prev span:before {
		  font-size: 40px !important; }
	.owl-1 .owl-nav .owl-next {
	  border: 4px solid blue;
	  right: -30px;
    top: -55px;
} 
	.owl-1 .owl-nav .owl-prev {
		left: -40px;
		top: -51px;
	} 
  
  .owl-1 .owl-dots {
	position: absolute;
	bottom: 40px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%); }
	.owl-1 .owl-dots .owl-dot {
	  background: none;
	  display: inline-block; }
	  .owl-1 .owl-dots .owl-dot > span {
		display: inline-block;
		width: 7px;
		height: 7px;
		border-radius: 50%;
		background: rgba(255, 255, 255, 0.5);
		margin: 4px; }
	  .owl-1 .owl-dots .owl-dot.active > span {
		background: white; }
	  .owl-1 .owl-dots .owl-dot:active, .owl-1 .owl-dots .owl-dot:focus {
		outline: none; }
  
  .media-29101 .img {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 50%;
	flex: 0 0 50%; 
	padding:50px;
}
  
  .media-29101 .text {
	padding: 50px; }
	@media (max-width: 991.98px) {
	  .media-29101 .text {
		padding: 20px;
		width: 100%; } 
	.owl-prev, .owl-next {
		display: none;
	}
	}
	.media-29101 .text .category {
	  color: #adb5bd;
	  text-transform: uppercase;
	  font-size: 12px;
	  font-weight: bold;
	  letter-spacing: .2rem; }
	.media-29101 .text h2 {
	  font-family: "Playfair Display", times, serif;
	  font-size: 2rem;
	  line-height: 1.3;
	  margin-bottom: 30px; }
	  .media-29101 .text h2 a {
		color: #000;
		font-family: 'Roboto'; }
  
  .carousel-nav {
	width: 100%;
	border-bottom: 1px solid #ccc;
	margin-bottom: 40px; }
	.carousel-nav a {
	  color: #999;
	  padding: 20px;
	  text-align: center;
	  display: inline-block; }
	  .carousel-nav a:hover {
		color: #000; }
	  .carousel-nav a.active {
		color: #000; }
		.carousel-nav a.active:before {
		  content: "";
		  bottom: -1px;
		  left: 0;
		  right: 0;
		  position: absolute;
		  border-bottom: 1px solid #000; }
		  #read-more{
			background: #000000;
            padding: 6px;
            border-radius: 100%;
		  }
		  #read-more .fa-plus , .fa-minus{
			color: white;
		  }
/* work areas css */

.icon-circle {
	position: relative;
	border-radius: 50%;
  }
  .icon:hover ~ .icon-circle {
	background-color: #48C2A8;
  }
.icon {
	position: absolute;
	top: 25px;
  }

  .icon-circle:hover {
	background-color: #48C2A9; /* Change background color on hover */
  }
  .icon-circle:hover.icon-circle img {
	visibility: hidden;
  }
 

  /* news section css */
  .news-section{
	background: #fff;
    padding: 50px;
	box-shadow: 0 0.3rem 2rem rgba(0,0,0,.1);
  }

  /* map area css*/
  .map-section{
	background-color: #48C2A8;
  }
  #map {
	position: relative;
    background-repeat: no-repeat; /* Prevent the background image from repeating */
    background-position: center center; /* Center the background image */
	height: 1000px; /* Adjust the height of the map image */
	background-image: url('../images/Vector\ Smart\ Object\ copy.png');
	background-size: contain;
}
.marker {
	position: absolute;
	width: 20px;
	height: 20px;
	background-color: red;
	border-radius: 50%;
	cursor: pointer;
}
/* Modal styles */
#map .map-section-img{
	position: absolute;
    left: 34%;
    top: 21%;
}
#map .map-section-container{
	padding: 80px;
}
#map .map-section-text{
    font-size: 70px;
}
.modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.7);
	justify-content: center;
	align-items: center;
}
.modal-body{
	text-align: left;
}
.modal-content {
	 background-image: url('../images/Vector\ Smart\ Object.png') !important;
	 background-size: cover 300px 200px !important;
	 background-repeat: no-repeat !important;
    background-position: center !important;
    padding: 20px;
	background: #edededc4;
	padding: 20px;
	border-radius: 5px;
	height: 800px;
}

.close {
	cursor: pointer;
	position: absolute;
	top: 10px;
	right: 20px;
}


/* CSS for city pointers */
.city-pointer {
	position: absolute;
	cursor: pointer;
}

.city-pointer .fa-map-marker-alt{
	color: #2EB99B;
}
.modal-dialog {
	margin-top: 200px; /* Adjust the modal's top margin to center it vertically */
}

/* CSS for city names and dotted lines */
.city-name {
	position: absolute;
	font-size: 12px;
	margin-top: -10px;
	margin-left: 12px;
}


.two-column-list {
    columns: 2; /* Split the list into two columns */
}

.dotted-line {
	border: 1px dotted #000;
	position: absolute;
	pointer-events: none;
}

/* breadcrumb style */
  .breadcrumb-container {
	background-color: #F6C427;
	padding: 10px;
	display: flex;
}

.breadcrumb-item {
	color: #0a0a0a;
	text-decoration: none;
	margin-right: 10px;
}

.breadcrumb-item:last-child {
	margin-right: 0;
}
/* publications page */


.hero-wrapper {
	height: 100px;
	background: #DBDBDB;
	background-image:url();
	background-position: center;
	background-size: cover;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	position: relative;
}

.hero-wrapper .overlay {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
/*             background: rgb(60, 65, 68); */
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	;
}

.hero-content {
	max-width: 550px;
	margin: 0 auto;
	text-align: center;
}

.hero-wrapper div h1 {
	margin: 0;
	font-size: 20px;
	margin-bottom: 15px;
	color: #626262;
}
 .hero-wrapper div h3 {
	margin: 0;
	color: #006CBE;
}
.hero-wrapper p {
	margin: 0;
	font-size: 20px;
	font-weight: 300;
	color: #626262;
	margin-bottom: 20px;
}

.publication-column {
	text-align: center;
	padding: 10px;
	height: 500px;
}
#loadMoreBtn{
	background-color: #48C2A9;
	color: #fff;
}

/* news page css */
/* News Card Styles */
.news-card {
	display: flex;
	align-items: start;
	background-color: #F8F8F8 !important;
	border: none !important;
  }
  
.card-title{
	font-weight: bold;
	font-size: 24px;
}
.news-chip {
  display: inline-block;
  position: relative;
  background: #424242;
  border-radius: 50%;
  margin-right: 8px;
  padding: 5px 12px;
  max-height: 32px;
}
.pre-heading {
	color: #444;
	font-size: 20px;
	font-weight: 400;
	text-transform: uppercase;
	white-space: pre;
  }


a.news-chip {
  cursor: pointer;
}

/* work areas page */

.hero-banner{
	height: 350px;
	background: #DBDBDB;
	background-image:url('../images/herobanner.PNG');
	background-position: center;
	background-size: cover;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	position: relative;
}