@charset "UTF-8";
/* OVERALL PAGE STYLES */	
body {
    margin: 0;
    padding: 0;
    font-family: "Gill Sans MT", 'Montserrat', "Gill Sans", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
    background-color: #000;
    padding-top: 100px;
    padding-bottom: 20px; 
	color: 000;
}
h1 {
  font-size: 36px;
  color: #1e90ff; /* Title color */
  margin-bottom: 20px;
}	
h2 {
    color: #29477D;
	font-size: 20px;
}
.page-headers {
		font-size: 32px;
		font-variant-caps: titling-caps;
		color: #384B7F;
	}


/* DESKTOP LOGO AND NAVBAR */
.nav-container {
	text-align: right;
	}
.navbar {
    position: fixed;
    top: 0;
    left: 0;
    height: 100px;
	width: 100%;
 	background-color: white; /* Set the background color */	
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
    z-index: 1000;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}
.navbar::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 5px; /* Adjust the height of the overlay */
  background: linear-gradient(to bottom, rgba(33, 93, 170, 0.5), rgba(33, 93, 170, 0));
  opacity: 50%;
  z-index: 1; /* Ensure the overlay is above the content */
  pointer-events: none; /* Make sure the overlay doesn't interfere with clicks */
}
	.logo {
		height: 100%;
		display: flex;
		align-items: center;
	}
	.logo img {
		max-height: 55%;
		margin-left: 20px;
	}
.top-contact-info {
	text-align: right;
	margin-bottom: 10px;
	margin-right: 70px;
	font-size: 18px;
	color: #333; /* Adjust the color as needed */
	}
.top-contact-info-text {
	vertical-align: top;
	}
.top-contact-info a {
	margin-left: 10px; /* Adjust the spacing between text and icons */
	text-decoration: none;
	font-size: 18px; /* Adjust the icon size */
	}
	.navbar-toggler {
		display: none; /* Hide by default on larger screens */
		cursor: pointer;
		padding: 10px;
	}
	.navbar-toggler div {
		height: 2px;
		width: 25px;
		background-color: #fff;
		margin: 6px 0;
		transition: 0.4s;
	}
		.nav-links {
			display: flex;
			align-items: center;
			margin-right: 50px;
		}
		.nav-links ul {
			list-style: none;
			display: flex;
			margin: 0;
			padding: 0;
		}
		.nav-links li {
			margin-right: 20px;
		}
		.nav-links a {
			text-decoration: none;
			color: #0862AD;
			font-size: 18px;
			font-family: Impact, sans-serif;
 			-webkit-font-smoothing: antialiased;
  			text-rendering: optimizeLegibility;
			transition: color 0.3s;
		}
		.nav-links a:hover {
			color: #1e90ff;
		}
			.dropdown {
				position: relative;
				color: #0862AD;
			}
			.dropdown-content {
				display: none;
				position: absolute;
				top: 100%;
				left: 0;
				background-color: #fff;
				color: #0862AD;
				box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
				border-radius: 5px;
				z-index: 1002;
			}
			.dropdown:hover .dropdown-content {
				display: flex;
				flex-direction: column;
			}
			.dropdown-content a {
				color: #1e90ff;
				padding: 10px;
				text-decoration: none;
				white-space: nowrap;
				display: block;
}
	.page-nav {
		scroll-margin-top: 100px;
	}


/* HOMEPAGE SECTION */
.homepage-container {
  position: relative;
  width: 100%;
  min-height: calc(100vh - 100px);
  display: flex;
  flex-direction: column;
  overflow: hidden; /* Ensure that the overlay image doesn't overflow */
}
#homepage-background-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
  opacity: 0.5;
}
.homepage-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  flex-grow: 1;
  padding: 20px;
  color: white;
  max-width: 1100px;
	align-self: center;
}
.homepage-title {
  font-size: 40px;
  font-family: Impact, Haettenschweiler, "Franklin Gothic Bold", "Arial Black", "sans-serif";
  margin-bottom: 20px;
  color: white;
	text-align: center;
		  z-index: 1;

}
.homepage-subtitle {
  font-size: 36px;
  margin-bottom: 40px;
  font-family: "Helvetica Neue", Helvetica, Arial, "sans-serif";
  color: lightgrey;
	text-align: center;
	  z-index: 1;
}
.homepage-links {
  position: relative;
  color: #f4f7ff;
}
.homepage-cards-container {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 2; /* Ensure the cards are above the overlay images */
}
.homepage-card {
  width: 340px;
  height: 80px;
  border-color: #fff;
  border-radius: 10px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  margin: 20px;
  padding: 20px;
  box-sizing: border-box;
  text-align: center;
  position: relative;
  z-index: 3; /* Set a higher z-index for the cards */
  margin-bottom: 70px;
}
.homepage-card:hover {
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
  opacity: .8; /* Adjusted opacity value for the hovered state */
}
.homepage-card .card-body {
  opacity: 1 !important; /* Override opacity for the entire card body */
}
.homepage-card-title,
.homepage-card-value {
  opacity: 1.0; /* Set opacity for the title and value to 1.0 */
}
.homepage-card-title {
  font-size: 28px;
  font-weight: bold;
  font-family: Impact, Haettenschweiler, "Franklin Gothic Bold", "Arial Black", "sans-serif";
  color: #FFF;
  opacity: 1.0;
	line-height: 10px;
}
.homepage-card-value {
  font-size: 65px;
  font-weight: bold;
  color: #1e90ff;
  opacity: 1.0;
	font-family: Impact, Haettenschweiler, "Franklin Gothic Bold", "Arial Black", "sans-serif";
}
.homepage-right-image,
.homepage-left-image {
  position: absolute;
  bottom: 0;
  opacity: 0.8;
  z-index: 1; /* Set a lower z-index for the overlay images */
}
.homepage-right-image {
  right: 0;
  width: 25vw;
}
.homepage-left-image {
  left: 0;
  width: 30vw;
}



/* COMPANY SECTION */
.company-section {
    color: #fff;
	   /* background: url('img/company-background.jpg') center/cover no-repeat fixed; */
	background-color: #FFF;
    text-align: center;
    padding: 0px 20px;
    position: relative;
    z-index: 1;
    overflow: hidden;
    min-height: 900px; /* Set a minimum height to prevent collapsing */
}
.company-section img {
    max-width: 100%;
    height: auto;
    margin: 20px 0;
}
		.whatwedo-container {
			display: flex;
			width: 1200px;
			margin: 10px auto; /* Adjusted margin to center the container */
			padding: 0 0px;
			overflow: hidden;
			align-items: center; /* Center items vertically */
			justify-content: center; /* Center items horizontally */
		}
		.whatwedo-header-image, .whatwedo-hotspot-image {
			flex: 1;
			position: relative;
			overflow: hidden;
			text-align: center;
			align-self: flex-start;
		}
		.whatwedo-header-image img {
			max-width: 100%;
			height: auto;
		}
		.whatwedo-hotspot-image img {
			max-width: 100%;
			height: auto;
		}
		.hotspot {
			position: absolute;
			cursor: pointer;
			background-color: gray; /* Change the color as needed */
			width: 126px;
			height: 100px;
			transition: opacity 0.3s;
			opacity: 0.2;
			border-radius: 15%; /* Add this line to round the corners */
		}
		.hotspot:hover {
			opacity: 0.1;
		}
		.hotspot1 {
			top: 12%;
			left: 18.5%;
		}
		.hotspot2 {
			top: 43%;
			left: 33.5%;
		}
		.hotspot3 {
			top: 60%;
			left: 57%;
		}
		.hotspot-text {
			position: absolute;
			top: 50%;
			left: 50%;
			padding-top: 60px;
			transform: translate(-50%, -50%);
			color: #1b2a42;
			font-size: 20px;
			opacity: 1; /* Set initial opacity to 1 */
			transition: opacity 0.5s;
			width: 500px;
		}
		.hotspot-text.fade {
			opacity: 0;
}

/* What We Do - COMPANY SECTION Continued */ 
.whatwedo-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 1250px;
    margin: 0 auto; /* This will center the div horizontally */
    padding: 10px;
}
	.whatwedo-title {
		font-family: Impact, Haettenschweiler, "Franklin Gothic Bold", "Arial Black", "sans-serif";
		font-size: 42px;
		color: #0862AD;
		height: 200px;
	}
	.whatwedo-row1 {
		display: flex;
		width: 100%;
		justify-content: space-between;
		margin-bottom: 20px; /* Adjust as needed */
	}
	.whatwedo-column-left {
		flex: 1;
		text-align: left;
		color: #1b2a42;
		margin-right: 20px;
	}
	.whatwedo-column-right {
		flex: 1;
		text-align: right;
		color: #1b2a42;
		max-width: 25%;
	}
      .whatwedo-image {
            display: flex;
			flex-direction: column; /* Add this line to stack images vertically */
            justify-content: space-evenly;
            margin-bottom: 0px;
		    margin-top: 20px;
        }
        .whatwedo-image img {
            width: 80%; /* Adjust as needed */
            margin-bottom: 4px; /* Adjust as needed */
            border: 1px solid #445EAB;
            border-radius: 8px;
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        }


/* Processes - COMPANY SECTION Continued */ 
.hero-section {
    background: url('img/hero.jpg') center/cover no-repeat fixed;
    color: #fff;
    text-align: center;
    position: relative;
    z-index: 1;
    overflow: hidden;
	padding-bottom: 50px;
		  border-top-left-radius: 10px; /* Add this line to your CSS code */
  border-top-right-radius: 10px; /* Add this line to your CSS code */

	
}
.hero-section::before {
    content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
    background-color: rgba(0, 0, 0, 0.5); /* Adjust the transparency level as needed */
      background-size: cover;
      filter: brightness(50%); /* Optional: Adjust brightness for better visibility of text */
    }
.hero-container {
    max-width: 1250px;
    margin: 0 auto;
    padding: 20px;
    position: relative;
    z-index: 2;
}
	.hero-title {
		font-size: 55px;
		font-family: Impact, Haettenschweiler, "Franklin Gothic Bold", "Arial Black", "sans-serif";
		margin-bottom: 20px;
	}
	.hero-subtitle {
		font-size: 26px;
		margin-bottom: 40px;
		font-kerning: auto;
		color: ghostwhite;
	}
	
.processes-grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: auto auto auto;
  grid-gap: 0px;
  margin-top: 10px;
}
.processes-grid-item:nth-child(-n+3) {
  background-color: #fff;
	opacity: 80%;
	  border-top-left-radius: 10px; /* Add this line to your CSS code */
  border-top-right-radius: 10px; /* Add this line to your CSS code */


}

.processes-grid-item:nth-child(n+4) {
  background: linear-gradient(to bottom, rgba(0,0,0,1), rgba(0,0,0,0));
	  border-bottom-left-radius: 10px; /* Add this line to your CSS code */
  border-bottom-right-radius: 10px; /* Add this line to your CSS code */


}

.processes-grid-item {
  padding: 10px;
  text-align: left;
  border: 1px solid #424242;
  min-height: 100px;
	font-size: 22px;
}	

	.processes-grid-item h1 {
		text-align: center;
		font-family: Impact, Haettenschweiler, "Franklin Gothic Bold", "Arial Black", "sans-serif";
	}

		.intro-image-container {
			position: relative;
			height: 520px;
		}
		.fade-image {
			position: absolute;
			opacity: 0;
			transition: opacity 1s, transform 1s;
		}
		.fade-in {
			opacity: 1;
			transform: translateY(-20px);
		}
		.image1 {
			top: 50%;
			left: 50%;
			transform: translate(-50%, -50%);
		}
		.image2 {
			top: 22%; 
			left: 8.5%; 
		}
		.image3 {
			top: 44%;
			left: 35%;
		}
		.image4 {
			top: 6%; 
			left: 57.5%; 
}


/* Our Leadership - COMPANY SECTION Continued */ 
.leadership-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    text-align: center;
	display: none;
}
.leadership-row {
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
    color: #667; /* Slightly lighter color for the description text */
}
.leadership-column {
    flex: 0 0 24%; /* Adjust the width as needed */
}
.leadership-card {
      background-color: #fff;
        border-radius: 15px;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        overflow: hidden;
        margin: 0 auto;
		padding: 10px;
        text-align: center;
        transition: transform 0.3s ease-in-out;
}
	.leadership-card img {
		max-width: 200px;
	}
.leadership-card:hover {
    transform: translateY(-5px); /* Lift the card slightly on hover */
}


/* SERVICES SECTION */
.services-container {
    background: url('img/services-background.jpg') center/auto no-repeat fixed;
    color: #000;
    text-align: center;
    padding: 0px 20px;
    position: relative;
    z-index: 1;
    overflow: hidden;
    display: flex;
	min-height: 500px;
	border-bottom-left-radius: 10px; /* Add this line to your CSS code */
	border-bottom-right-radius: 10px; /* Add this line to your CSS code */
}
.services-content {
    max-width: 1100px;
    margin: 0 auto;
    padding: 20px;
    position: relative;
    z-index: 2;
    display: flex;
}
.services-left-section,
.services-right-section {
    box-sizing: border-box; /* Include padding in the width calculation */
    display: flex;
    flex: 1; /* Distribute available space equally */
    justify-content: center;
    align-items: center;
}
.services-right-section {
    margin-left: 90px; /* Adjusted margin for separation */
	min-width: 800px;
		background: url('img/services-choose-image.png') no-repeat;
}

/* Optional: Ensure direct children of .services-content are affected */
.services-content > * {
    flex: 1;
    box-sizing: border-box;
}
.services-infographic {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 400px;
    height: 400px;
}
.services-center {
    width: 200px;
    height: 200px;
    background-color: #333;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    position: absolute;
    font-size: 45px;
    font-family: Impact, Haettenschweiler, "Franklin Gothic Bold", "Arial Black", "sans-serif";
}
.services-bubble {
    width: 150px;
    height: 150px;
    background-color: #3498db;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    cursor: pointer;
    position: absolute;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
    transition: transform 0.3s ease-in-out;
    font-size: 26px;
    font-family: Impact, Haettenschweiler, "Franklin Gothic Bold", "Arial Black", "sans-serif";
}
.services-bubble1 {
    top: -10%;
    left: 30%;
}
.services-bubble2 {
    bottom: 43%;
    left: -9%;
}
.services-bubble3 {
    bottom: 43%;
    right: -9%;
}
.services-bubble4 {
    top: 66%;
    left: 7%;
}
.services-bubble5 {
    top: 66%;
    right: 7%;
}
.services-popup {
    max-width: 720px;
    position: absolute;
    top: 5%;
	left: 41%;
	text-align: justify;
    /* transform: translateX(100%) translateY(50%); */
    background-color: #333;
    color: #fff;
    padding: 15px;
    border-radius: 8px;
    opacity: 0;
    transition: opacity 0.3s, transform 0.3s;
    pointer-events: none;
    z-index: 999;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
    font-size: 14px;
}
	.services-popup img {
  float: left;
		margin-right: 30px;
		margin-top: -10px;
	}
.pmo {
		line-height: 14px;
	}
	.pmo-list {
		font-size: 20px;
	}
.services-bubble:hover {
    transform: scale(1.1);
}
.services-bubble:hover .services-popup {
    opacity: 1;
    transform: translateY(-10px);
}



/* INDUSTRIES SECTION */
body .industry-section {
  background-color: #f8f8f8;
}
.industry-section {
  text-align: center;
  background-color: #f8f8f8;
  padding: 50px 0;
}
.industry-section h2 {
  font-size: 36px;
  color: #333;
  margin-bottom: 30px;
}
.industry-container {
  margin: 0 auto;
  background-color: #f8f8f8;
  max-width: 1200px; /* Adjust max-width based on your design preference */
  text-align: center;
}
.industry-content {
  display: flex;
  justify-content: space-evenly;
}
.industry-left {
  width: 60%;
  text-align: center;
}
.industry-right {
  width: 36%;
  text-align: center;
	margin-top: 50px;
}
.industry-images-container {
  display: flex;
  justify-content: center; /* Center images horizontally */
  flex-wrap: wrap;
  gap: 20px; /* Adjust the gap based on your design preference */
}
.industry-image {
  width: calc(50% - 20px); /* Set the width to 50% with gap included for a 2x2 grid */
  max-width: 300px; /* Adjust max-width based on your design preference */
  margin-bottom: 20px;
  border: 1px solid #445EAB;
  border-radius: 8px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
.industry-item {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
.industry-icon i {
  font-size: 24px;
  margin-right: 10px;
  color: #1e90ff;
}
.industry-title {
  font-size: 18px;
  text-transform: uppercase;
  font-weight: bold;
  color: #000;
}
.bi {
  vertical-align: text-bottom;
}


/* CONTACT SECTION */
#contact {
    background-color: #EAEFFE; /* Set background color if needed */
    padding: 80px 0; /* Adjust padding as needed */
	color: #000;
}
.form-row {
    margin-bottom: 15px;
}
.form-group {
    margin-bottom: 15px;
}
.btn-primary {
    background-color: #007bff; /* Set button background color */
    color: #fff; /* Set button text color */
}
.btn-primary:hover {
    background-color: #0056b3; /* Set button background color on hover */
}
.infographics-container {
    display: flex;
    justify-content: space-around;
    padding: 50px;
}
.infographic-card {
    width: 250px;
    padding: 12px;
    margin: 5px;
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    text-align: center;
}
.infographic-card img {
    width: 100%; /* Use 100% width to fill the container */
    height: auto; /* Maintain the aspect ratio */
    max-width: 100%; /* Ensure the image doesn't exceed the container width */
    border-radius: 8px; /* Optional: Adds rounded corners to the images */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Optional: Adds a subtle box shadow */
	margin-bottom: 10px;
}


/* TESTIMONIALS SECTION */
	 #testimonials {
    display: none;
  }
	.testimonials-container {
		margin: 0 auto;
		padding: 0 15px;
		box-sizing: border-box;
		display: none;
	}
	.testimonial-card {
        background-color: #fff;
        border-radius: 15px;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        overflow: hidden;
        max-width: 320px;
        margin: 0 auto;
        text-align: center;
        transition: transform 0.3s ease-in-out;
		height: 340px;
    }
    .testimonial-card:hover {
        transform: scale(1.05);
    }
    .quote-icon {
        font-size: 36px;
        color: #007bff; /* Adjust color as needed */
        margin-bottom: 20px;
    }
    .quote {
        font-size: 16px;
        color: #555;
        line-height: 1.6;
    }
    .client-info {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-top: 20px;
    }
    .client-info img {
        width: 80px; /* Adjust image size as needed */
        border-radius: 10%;
        margin-right: 15px;
    }
    .client-details {
        text-align: left;
    }
    .client-name {
        font-size: 18px;
        font-weight: bold;
        margin-bottom: 5px;
    }
    .client-title {
        font-size: 14px;
        color: #888;
    }	

	.faq {
		margin-top: 50px;
		font-size: 20px;
		margin-bottom: 50px;
		
    }
	.btn-link {
  font-size: 22px;
  color: #337ab7;
  text-decoration: none;
}

.btn-link:hover {
  color: #23527c;
}

.btn-link:focus {
  outline: none;
  box-shadow: none;
}


/* FOOTER SECTION*/
.footer {
    color: #7A7A7A;
    padding: 2px;
    text-align: center;
    bottom: 0;
    width: 100%;
    height: 40px;
    font-size: 12px;
    z-index: 1000;
 	background-color: white; /* Set the background color */	
}
.footer::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 5px; /* Adjust the height of the overlay */
  background: linear-gradient(to bottom, rgba(33, 93, 170, 0.5), rgba(33, 93, 170, 0));
  opacity: 50%;
  z-index: 1; /* Ensure the overlay is above the content */
  pointer-events: none; /* Make sure the overlay doesn't interfere with clicks */
}

/* Styles for popup container */
.contact-us-popup {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #ffffff;
  border: 2px solid #ccc;
  border-radius: 5px;
  padding: 20px;
  z-index: 1000;
}

/* Styles for overlay during popup*/
.contact-us-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 999;
}
