:root {
    --primary-color: #282D58;
    --secondary-color: #971B1E;
    --bs-table-bg: #282D58 !important;
    --font-size: 16px;
    /*--heading-font: "MuseoModerno", sans-serif;*/
    --heading-font: "Arial", sans-serif;
}

/* Accent Background Colors */
.bg-accent-golden-yellow {
    background: #E8B317 !important;
}

.bg-accent-soft-green {
    background: #4CAF50 !important;
}

.bg-accent-teal {
    background: #008080 !important;
}

.bg-accent-coral-pink {
    background: #FF6F61 !important;
}

.bg-accent-light-blue {
    background: #4B9CD3 !important;
}

.bg-accent-deep-orange {
    background: #F46B3F !important;
}

.bg-accent-lilac-purple {
    background: #9C27B0 !important;
}

.bg-accent-soft-gray {
    background: #B0BEC5 !important;
}

body, html{
	font-family: "Poppins", system-ui;
	margin: 0 auto;
	height: 100%;
}
h1, h2, h3, h4, h5, h6{
	font-family: var(--heading-font);
}

section{
	padding: 50px 0;
}
.bg-primary-color{
	background-color: var(--primary-color) !important;
}
.bg-secondary-color{
	background-color: var(--secondary-color) !important;
}
.bg-gray{
	background-color: #eee !important;
}
.border-primary{
	border-color: var(--primary-color) !important;
}
.border-secondary{
	border-color: var(--secondary-color) !important;
}
header{
	background-color: #fff;
	position: relative;
}
header .top-header{
	background-color: var(--primary-color);
	padding: 10px;
	margin: 0 !important;
}
.header-row{
    align-items:center;
    margin-right: 3rem !important;
    margin-left: 3rem !important;
    padding-top: .5rem !important;
    padding-bottom: .5rem !important;
}
.logo img{
	position: absolute;
	max-width: 220px;
	top: 25%;
	z-index: 1;
}
.top-header{
	color: #fff;
}
.top-header i{
	background-color: #fff;
	color: var(--secondary-color);
	border-radius: 100%;
	padding: 5px;
}
.top-header .contact-info{
	gap: 20px;
	font-size: 14px;
}
.login button{
	background-color: var(--primary-color) !important;
	border: 1px solid #fff;
	border-radius: 30px;
	padding: 5px 20px;
}
.login button a{
    color: #fff;
}
.login button:hover{
	border: 1px solid var(--secondary-color);
	background-color: var(--secondary-color) !important;
}

.megamenu .dropdown-item{
	color: #fff !important;
}
.megamenu .dropdown-item:hover{
	color: var(--primary-color); !important;
	background-color: var(--secondary-color);
}

.navbar-nav .nav-link {
    padding: 10px 15px;
    font-weight: bold;
}

.navbar-nav .nav-link span {
    display: block;
    font-size: 12px;
    color: grey;
}

.dropdown-item {
    padding: 10px;
}

.dropdown-item:hover {
    background-color: #f1f1f1;
}

.mega-menu .container-fluid {
    max-width: 1140px; /* Align the dropdown content within the container */
}

.dropdown-toggle::after {
	display: none;
}
.dropdown-menu{
	background-color: var(--primary-color);
}

/* Custom CSS for dropdown hover effect */
.nav-item.dropdown:hover .dropdown-menu {
    display: block;
}

.navbar-nav .nav-link {
    cursor: pointer;
}

/* Prevent dropdowns from closing on hover out */
.dropdown-menu {
    display: none; /* Hide by default */
}

.nav-item.dropdown:hover .dropdown-menu {
    display: block; /* Show on hover */
}
.bottom-header{
    margin-right: 3rem !important;
    margin-left: 3rem !important;
    padding-right: 3rem !important;
    padding-left: 3rem !important;
}
.bottom-header #navbarBottomNav{
	justify-content: end !important;
}
.bottom-header .navbar-nav .nav-link{
	font-weight: normal;
	font-size: 15px;
	color: #fff;
}
.bi-1{
    display: none;
}
.hero-section{
	height: 100vh;
	background: url("../../assets/images/4.jpg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.hero-cta{
	background-color: #fff;
	border-radius: 30px;
	justify-content: flex-start;
	padding: 30px 20px;
}
.page-h1{
	color: var(--secondary-color);
	font-weight: 500;
	font-size: 30px;
	margin-bottom: 20px;
	font-family: "Poppins", system-ui;
}
.page-h1 b{
	font-size: 45px;
	font-weight: 800;
	margin-bottom: 10px;
	margin-top: 10px;
	display: block;
	font-family: var(--heading-font);
}
.page-h2{
	font-size: 40px;
	color: var(--primary-color);
}

.page-h2 b{
	font-size: 58px;
	color: var(--secondary-color);
}
.btn-hero{
	border-radius: 30px;
	border: 2px solid;
	display: block;
	margin-bottom: 20px;
	width: 100%;
	text-align: left;
	padding: 10px 30px;
	color: #fff;
	display: flex;
	justify-content: space-between;
	align-items: center;
	right: 0;
	transition: all 0.5sec ease;
	position: relative;
}
.btn-1{
	background-color: var(--primary-color);
	border-color: var(--primary-color);
}
.btn-2{
	background-color: #282d58ab;
	border-color: var(--primary-color);
}
.btn-3{
	background-color: #971b1e87;
	border-color: var(--secondary-color);
}
.btn-1:hover{
	background-color: var(--primary-color);
	border-color: var(--primary-color);
	color: #fff;
}
.btn-2:hover{
	background-color: #282d58ab;
	border-color: var(--primary-color);
	color: #fff;
}
.btn-3:hover{
	background-color: #971b1e87;
	border-color: var(--secondary-color);
	color: #fff;
}
.btn-hero i{
	right: 0;
	transition: all 0.5sec ease;
}
.btn-hero:hover i{
	position: absolute !important;
    right: 20px;
}
.hero-cta p{
	font-weight: 500;
	font-size: 16px;
	text-align: center;
	margin-bottom: 20px;
}
a{
	text-decoration: none;
	color: var(--primary-color);
	transition: all 0.5sec ease;
}
a:hover{
	text-decoration: underline;
	color: var(--secondary-color);
}

.feature-section{
	margin-top: -110px;
	margin-bottom: -100px;
}
.features{
    background-color: rgba(189, 38, 41); /* red with 30% opacity */
	/*background-color: #fff;*/
	padding: 20px 10px;
	border-radius: 30px;
	border: 2px solid var(--secondary-color);
	box-shadow: 0 10px 10px rgb(0,0,0,0.1);
}
.feature{
	text-align: center;
	position: relative;
}
.feature:not(:last-child)::after{
	content: "";
	border-right: 2px solid #ddd;
	height: 150px;
	position: absolute;
	top: 30px;
	right: 0;

}
.feature i{
	font-size: 40px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	background-color: var(--secondary-color);
	border-radius: 50%;
	width: 60px;
	height: 60px;
}
.feature .digit{
	font-size: 70px;
	color: var(--primary-color);
	display: block;
	font-weight: 800;
}
.feature .feature-title{
	font-size: 15px;
	font-weight: 500;
	color: var(--secondary-color);
}
.certificate-section{
	padding: 150px 0 50px 0;
}
.certificate-section img{
	max-width: 400px;
	border: 1px solid var(--primary-color);
}
.certificate-section p{
	font-size: 18px;
}

.logo-slider{
	padding-bottom: 50px;
}

.slider {
  margin-top: 70px;
  background-color: var(--secondary-color) !important;
  padding: 20px 10px;
  overflow: hidden; /* Hide overflow */
}

.slide-track {
  display: flex;
  gap: 3em; /* Gap between images */
  width: calc((100px + 3em) * 28); /* 14 images duplicated, so total 28 images */
  animation: scroll 60s linear infinite; /* Scroll animation */
}

.slider img {
  width: 100px;
  height: 100px;
  border-radius: 50%;
}

@keyframes scroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(calc(-50%)); } /* Move by 50% to create an infinite loop */
}

.certification{
	border-radius: 30px;
	background-color: #fff;
	padding: 30px 10px;
	box-shadow: 0 0px 10px rgb(0,0,0,0.1);
	text-align: center;
	margin-bottom: 30px;
	height: 100%;
}
.certification img{
	max-width: 150px;
}
.certification span{
	margin-bottom: 20px;
}
.certification .certificate-name{
	font-size: 30px;
	font-weight: 600;
	color: var(--primary-color);
	display: block;
}
.certification .certificate-description{
	font-size: 15px;
	font-weight: 400;
	color: var(--secondary-color);
	display: block;
}

.step-container{
	border-radius: 30px;
	padding: 30px 20px;
}
.step-process{
    padding: 3rem;
}
.step{
	text-align: left;
	border: 1px solid var(--primary-color);
	border-radius: 10px;
	height: 100%;
	position: relative;
}
.step span {
	font-size: 27px;
	margin-bottom: 20px;
	text-align: center !important;
	background-color: var(--primary-color);
	width: 100%;
	padding: 10px 5px;
	border: 1px solid var(--primary-color);
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	color: #fff;
	display: inline-block;
}
.step b{
	position: absolute;
    font-size: 150px;
    z-index: 1;
    color: #eee;
    bottom: 0;
}
.step ul{
	padding: 5px 30px 10px 30px;
	font-size: 18px;
	position: relative;
	z-index: 2;
}

/* Section Styling */
.services-section {
    padding: 3rem 0;
}

/* Heading Styling */
.services-section h2 {
    font-size: 2.5rem;
    color: #1a2948;
    text-align: center;
}

/* Paragraph Styling */
.services-section p {
    color: #444;
    text-align: center;
    margin-bottom: 3rem;
}

/* Service Card Styling */
.service-card {
    padding: 1.5rem;
    border-radius: 30px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
    transition: transform 0.3s ease-in-out;
    text-align: center;
    background: #fff;
    color: var(--secondary-color);
    height: 100%;
}

/* Text Styling for Service Cards */
.service-card h3 {
        font-size: 1.5rem;
    color: var(--secondary-color);
    margin-bottom: 1rem;
    font-weight: bold;
}

.service-card p {
    font-size: 1rem;
    color: #010101;
    margin-bottom: 1.5rem;
}

/* Hover Effect */
.service-card:hover {
    transform: scale(1.05);
}

/* Button Styling */
.services-section .btn {
    font-size: 1rem;
    margin-top: 1rem;
    border-color: var(--primary-color) !important;
}

.technical-service .service-image img{
    box-shadow: 0 0 10px rgb(0,0,0,0.2);
    border-radius: 15%;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 200px;
    height: 200px;
}

.signature{
    text-align: center;
    margin-left: auto;
    width: 200px;
    margin-top: 50px;
}
.signature hr{
    width: 200px;
    margin-left: auto;
    border: 1px solid #666 !important;
    opacity: 1;
}

.download{
    background: var(--primary-color);
    border-radius: 15px;
    text-align: center;
    padding: 20px;
    height: 100%;
}
.download a{
    display: block;
    color: #fff;
}
.download a i{
    font-size: 50px;
    background: var(--secondary-color);
    padding: 20px;
    border-radius: 50%;
    width: 100px;
    height: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: auto;
}
.download .file-name{
    margin-top: 20px;
    margin-bottom: 0;
    font-weight: 600;
}
/* About Page */

/* General Container */
.about-container {
    padding: 3rem 0;
}

/* Heading */
.about-heading {
    color: #1a2948;
    font-size: 2.5rem;
    margin-bottom: 1.5rem;
}

/* Paragraph */
.about-paragraph {
    color: #444;
    font-size: 1rem;
    line-height: 1.8;
}

/* List */
.about-list {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

/* List Item */
.about-list-item {
    margin-bottom: 15px;
    padding: 20px;
    background: linear-gradient(135deg, #1a2948, #3a4b6b);
    border-radius: 10px;
    color: #fff;
    height: 100%;
}

/* Centered Text */
.text-center {
    text-align: center;
}

/* Margins */
.mt-5 {
    margin-top: 3rem;
}


/* Footer Container */
footer {
    background: var(--primary-color);
    color: #e0e0e0;
    padding: 40px 0 0 0;
    font-family: 'Arial', sans-serif;
}

footer h4 {
    font-size: 18px;
    color: #fff;
    margin-bottom: 20px;
    font-weight: 700;
}

footer a {
    color: #fff;
    text-decoration: none;
    font-weight: 500;
}

footer a:hover {
    color: #fff;
    text-decoration: underline;
}

footer .footer-section {
    padding: 0 20px;
}

footer .footer-section ul {
    list-style: none;
    padding: 0;
}

footer .footer-section ul li {
    margin-bottom: 10px;
    display: flex;
    align-items: center;
}

footer .footer-section ul li a {
    margin-left: 10px;
}

footer .social-icons {
    display: flex;
    justify-content: center;
    padding-top: 20px;
}

footer .social-icons a {
    margin: 0 10px;
}

footer .social-icons a img {
    width: 30px;
    height: 30px;
    transition: transform 0.3s ease;
}

footer .social-icons a:hover img {
    transform: scale(1.2);
}

/* Contact Info */
footer .contact-info span{
    width: 50% !important;
}
footer .contact-info p {
    margin: 0 0 10px;
    display: flex;
    align-items: center;
}

footer .contact-info p i {
    margin-right: 10px;
    color: var(--secondary-color);
}

/* Spacing for the bottom */
footer .copyright {
    text-align: center;
    margin-top: 20px;
    color: #f5f5f5;
    font-size: 14px;
}

.footer-top{
	padding: 20px 30px;
	border-radius: 30px;
	background-color: var(--primary-color);
}
.location{
	padding: 10px 30px;
	display: inline-flex;
	flex-direction: row;
	background-color: #fff;
	color: #000;
	border-radius: 30px;
	margin-bottom: 30px;
	font-size: 14px;
	gap: 70px;
	align-items: center;
	justify-content: center;
}
.location img{
	max-width: 100px;
	align-self: center;
}
.location i{
	color: #fff;
	background-color: var(--secondary-color);
	width: 30px;
	height: 30px;
	padding: 10px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
}

.industries-section{
	padding: 50px 20px;
}
.industry{
	background-color: #fff;
	padding: 20px;
	box-shadow: 0 0 10px rgb(0,0,0,0.1);
	text-align: center;
	border-radius: 15px;
	margin-bottom: 20px;
	display: block;
}
.industry img{
	margin-bottom: 20px;
	border-radius: 15px;
}
.industry span{
	font-weight: 600;
}

.cta-section{
	padding: 50px 20px;
	background: linear-gradient(120deg, var(--primary-color), var(--secondary-color));
}
.cta{
	background-color: #fff;
	padding: 30px 50px;
	text-align: center;
	border-radius: 30px;
}
.cta-btn{
	border-radius: 30px;
	padding: 10px 30px;
	border: 1px solid var(--secondary-color);
	font-weight: 500;
}
.cta-1{
	background-color: var(--secondary-color);
}
.cta-1:hover{
	background-color: var(--secondary-color);
	border-color: var(--secondary-color);
}
.cta-2{
	background-color: transparent;
}
.cta-2:hover{
	background-color: var(--secondary-color);
	border-color: var(--secondary-color);
}
.cta-2 a{
	color: var(--secondary-color);
	text-decoration: none;
}
.cta-2:hover a{
	color: #fff;
}
.faqs-section{
	padding: 50px 20px;
}
.faqs-section .accordion{
	margin-bottom: 20px;
}
.faqs-section .accordion-item{
	border: none;
}
.faqs-section .accordion-button{
	background-color: var(--primary-color);
	color: #fff;
}
.faqs-section .accordion-button::after{
	color: #fff !important;
}
.faqs-section .accordion-button::after,
.faqs-section .accordion-button:not(.collapsed)::after {
  filter: brightness(0) invert(1);
}

.breadcrumb-item li, .breadcrumb-item{
	font-size: 13px !important;
}
.subheading{
	font-size: 35px;
	font-family: var(--heading-font);
	color: #000;
	font-weight: 400;
	margin-top: 20px;
	margin-bottom: 20px;
}
.iso-description .page-h2{
	font-size: 45px !important;
}
.iso-description p{
	font-size: 15px;
	color: #000;
	font-weight: 400;
}
.iso-quote-form .card{
	border: 2px solid var(--secondary-color);
	padding: 30px 10px;
	max-width: 100%;
	border-radius: 30px;
}
.iso-quote-form hr, .cost-section hr{
	width: 30%;
    border: 2px solid;
    align-self: center;
    margin: 0 10px;
}
.iso-quote-form h2{
	font-size: 28px;
	font-weight: 600;
}
.iso-quote-form .step, .cost-section .step{
	width: 50px; 
	height: 50px;
	border-radius: 50%;
	border: 1px solid var(--secondary-color);
	font-size: 25px;
	font-weight: 700;
}

.iso-quote-form .step-current, .cost-section .step-current{
	background-color: #fff;
	color: var(--secondary-color);
}
.iso-quote-form .step-next, .cost-section .step-next{
	background-color: #fff;
	color: #aaa;
	border-color: #aaa;
}
.iso-quote-form .step-complete, .cost-section .step-complete{
	color: #fff;
	border-color: #198754;
}
.text-danger{
	color: var(--secondary-color);
}
.bg-danger{
	background-color: var(--secondary-color);
}
.btn-danger{
	background-color: var(--secondary-color);
}
.iso-quote-form button{
	padding: 10px 0;
	border-radius: 30px;
	font-weight: 600;
	font-size: 18px;
}
.select2-container{
    margin-top: 10px !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove{
    margin: 0 !important;
    border-radius: 4px !important;
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__clear{
    color: #000 !important;
}
.iso-navigation{
	background: linear-gradient(45deg, var(--primary-color), var(--secondary-color));
    position: sticky;
    top: 0;
    z-index: 100;
}
.iso-navigation svg{
	max-width: 50px;
    fill: #fff;
    height: auto;
}
.iso-navigation a{
	color: #fff;
}
.iso-navigation p{
	display: inline-flex;
    justify-content: left;
    align-items: center;
    gap: 20px;
    margin-bottom: 30px;
    width: 100%;
    border: 1px solid #fff;
    padding: 10px 10px;
    border-radius: 30px;
}
.iso-navigation p.active{
	background: #fff;
}
.iso-navigation p.active svg{
    fill: var(--primary-color);
}
.iso-navigation p.active a{
	color: var(--primary-color);
}
.content-sections{
    width: 74%;
}
.long-description h2{
	color: #000;
	font-size: 35px;
	font-weight: 600;
}
.long-description img{
	height: auto !important;
    width: 100% !important;
}
.benefits-section{
	background-color: #eee;
}
.benefits-section h2{
	color: #000;
	font-size: 35px;
	font-weight: 600;
}
/* Step 1: Reset the counter in the parent <ol> */
.benefit-list {
    list-style: none; /* Remove default list numbering */
    padding-left: 0; /* No need for padding anymore */
    counter-reset: custom-counter; /* Initialize the counter */
}

/* Step 2: Increment the counter for each .benefit */
.benefit {
    position: relative;
    counter-increment: custom-counter; /* Increment the counter */
    margin-bottom: 20px; /* Add space between list items */
}

/* Step 3: Display the counter number */
.benefit::before {
    content: counter(custom-counter); /* Display the current counter value */
    background-color: #971b1e94;
    color: #fff; /* Text color of the number */
    font-weight: 700;
    padding: 10px;
    border-radius: 50%; /* Make the number a circle */
    width: 33px;
    height: 33px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    left: 0; /* Set the circle at the start */
    top: 0;
}

/* Step 4: Add space between the counter and the text */
.benefit p {
    margin-left: 30px; /* Add space between the counter and text */
}
.call-cta strong{
	display: block;
	font-size: 32px;
}
.call-cta p{
	border: 2px solid var(--primary-color);
	border-radius: 30px;
	padding: 20px;
	font-size: 26px;
	font-family: var(--heading-font);
}



.cost-section form {
	border: 2px solid var(--primary-color);
	border-radius: 30px;
    max-width: 600px;
    margin: auto;
    padding: 10px 30px ;
}

.cost-section button{
	border-radius: 20px;
	padding: 10px 60px;
}

fieldset {
    border: none;
    padding: 20px;
    margin-bottom: 20px;
}

.cost-section legend {
    font-size: 2rem;
    margin-bottom: 10px;
    text-align: center;
    font-family: var(--heading-font);
    font-weight: 600;
    color: var(--primary-color);
}

.cost-section input, select {
    display: block;
    width: 100%;
    padding: 10px;
    margin: 10px 0;
    border-radius: 10px;
}

input[type="radio"]{
	border: 1px solid var(--secondary-color);
	width: 20%;
}

button {
    background-color: #4CAF50;
    color: white;
    padding: 10px 20px;
    border: none;
    cursor: pointer;
    margin: 10px 0;
}

button[type="submit"] {
    background-color: #f44336;
}

button[disabled] {
    background-color: #cccccc;
}
.office-count{
	gap: 20%;
	margin-top: 20px;
}
.office-count span{
	border: 1px solid var(--secondary-color);
    border-radius: 20px;
    width: 25%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.requirements-section{
	background-color: #eee;
}
.requirements-section h2{
	color: #000;
	font-size: 35px;
	font-weight: 600;
}
.resource{
	border: 1px solid #eee;
	border-radius: 20px;
	box-shadow: 0 0 10px rgb(0, 0, 0, 0.1);
}
.resource img{
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
	margin-bottom: 10px;
}
.resource span{
	padding: 10px 20px;
	display: block;
}
.resource span strong{
	font-family: var(--heading-font);
	font-weight: 600;
	font-size: 26px;
	display: block;
}
.resource p{
	font-size: 15px;
	color: #090909;
}
.resource button{
	padding: 10px 30px;
	background-color: transparent;
	border: 1px solid var(--secondary-color);
	border-radius: 30px;
	color: var(--secondary-color);
	font-weight: 600;
}
.resource button:hover{
	background-color: var(--secondary-color);
	color: #fff;
	border-color: var(--secondary-color);
}
.resource button a{
	color: var(--secondary-color);
	text-decoration: none;
}
.resource button:hover a{
	color: #fff;
}
.resources-section h2{
	color: #000;
	font-size: 35px;
	font-weight: 600;
}

.intro{
	background-color: #fff;
	width: 50%;
	padding: 20px 20px;
	border-radius: 30px;
}
.intro p{
	font-size: 29px;
	font-family: var(--heading-font);
	font-weight: 300;
}
.action-buttons button{
	display: block;
	border-radius: 30px;
	width: 100%;
	text-align: left;
	display: inline-flex;
	justify-content: space-between;
	padding: 15px ;
	background-color: var(--secondary-color);
	border-color: var(--secondary-color);
}
.action-buttons button:hover{
	background-color: var(--secondary-color);
	border-color: var(--secondary-color);
}
.action-buttons button i{
	align-self: center;
}
.transcript-heading{
	font-size: 40px !important;
}
.contact-form input, .contact-form textarea{
	border-width: 2px;
}
