/* Reset & basic */
* { margin:0; padding:0; box-sizing:border-box; }
body { font-family: Arial, sans-serif; line-height:1.6; color:#333; }
a { text-decoration:none; color:inherit; }
.container { width:90%; max-width:1200px; margin:0 auto; }
.text-center { text-align:center; }

/* Buttons */
.btn { display:inline-block; padding:12px 24px; border:0; cursor:pointer; text-transform:uppercase; letter-spacing:1px; }
.btn-primary { background:#0056b3; color:#fff; }
.btn-primary:hover { background:#004494; }
.btn-secondary { background:#e0e0e0; color:#333; }
.btn-secondary:hover { background:#c8c8c8; }

/* Header */
.site-header { background:#fff; border-bottom:1px solid #e0e0e0; }
.topbar { background:#f8f8f8; font-size:0.9rem; padding:6px 0; display:flex; justify-content:space-between; align-items:center; }
.contact-info span { margin-right:24px; }
.navbar { display:flex; justify-space:between; align-items:center; padding:16px 0; }
.logo a { font-size:1.5rem; font-weight:bold; color: #1e75d9; }
.mainnav ul { list-style:none; display:flex; }
.mainnav li { margin:0 16px; }
.mainnav a { color:#333; font-weight:500; }
.header-cta .btn { margin-0; }

/* Hero Section */
.hero { display:flex; align-items:center; padding:80px 0; background:#f1f9ff; }
.hero-content { flex:1; padding-right:40px; }
.hero-content h1 { font-size:2.5rem; margin-bottom:16px; }
.hero-content h2 { font-size:2rem; margin-bottom:16px; }
.hero-content .highlight { color:#1e75d9!important; }
.hero-content p { margin-bottom:24px; font-size:1.1rem; }
.hero-image { flex:1; }
.hero-image img { width:100%; height:auto; }

/* Services Intro */
.services-intro { padding:80px 0; }
.services-intro h3 { text-transform:uppercase; color:#777; margin-bottom:8px; }
.services-intro h2 { font-size:2rem; margin-bottom:16px; }
.services-cards { display:flex; gap:24px; margin:40px 0; }
.card { background:#fff; padding:24px; border:1px solid #e0e0e0; flex:1; }
.card h4 { font-size:1.25rem; margin-bottom:12px; }
.card p { font-size:1rem; color:#555; }

/* Industries Section */
.industries { background:#fafafa; padding:80px 0; }
.industries h3 { text-transform:uppercase; color:#777; }
.industries h2 { font-size:2rem; margin:8px 0 16px; }
.industry-list { display:flex; flex-wrap:wrap; gap:24px; margin-40px 0; }
.industry-item { flex:1 1 calc(33.333% - 24px); background:#fff; padding:24px; border:1px solid #e0e0e0; }
.industry-item h4 { font-size:1.2rem; margin-bottom:12px; }
.industry-item p { color:#555; }

/* Experience / Stats Section */
.experience-stats { padding:80px 0; display:flex; align-items:center; }
.stats-content { flex:1; padding-right:40px; }
.stats-content h2 { font-size:2rem; margin-bottom:8px; }
.stats-content h3 { font-size:1.5rem; margin-bottom:16px; color:#0056b3; }
.stats-content p { color:#555; margin-bottom:32px; }
.stats-list { display:flex; gap:40px; }
.stat { text-align:center; }
.stat .number { font-size:2rem; font-weight:bold; display:block; }
.stat .label { color:#777; }
.stats-image { flex:1; }
.stats-image img { width:100%; height:auto; }

/* Testimonials Section */
.testimonial {
  transition: transform 0.3s ease;
}

.testimonial:hover {
  transform: translateY(-5px);
}

.testimonial p {
  font-size: 1rem;
  color: #333;
  line-height: 1.6;
}

.testimonial h4 {
  font-size: 1.1rem;
  font-weight: 600;
  margin-top: 1rem;
}

.testimonial span {
  font-size: 0.9rem;
  color: #666;
}

/* CTA Section */
.cta-section {
  background-color: #112c6c!important; /* soft professional tone */
}

.cta-heading {
  font-size: 2rem;
  font-weight: 600;
  color: #fff;
}
.cta-text {
  font-size: 1.1rem;
  color: #fff;
  line-height: 1.6;
  max-width: 600px;
  margin: 0 auto; /* centers text block on mobile */
}

.cta-section img {
  max-height: 320px;
  object-fit: cover;
}
.cta-section .btn-primary {
  background-color: #0b8ac8;
  border-color: #112c6c;
  color: #fff;
  transition: background-color 0.3s ease, border-color 0.3s ease;
}

.cta-section .btn-primary:hover {
  background-color: #9bcde3;
  border-color: #0b8ac8;
  color: #fff;
}


/* Latest News Section */
.news-item h4 {
  font-size: 1.2rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
}

.news-item p {
  font-size: 0.95rem;
  color: #333;
}

.news-meta span {
  font-size: 0.85rem;
  color: #666;
}

.news-link {
  font-size: 0.9rem;
  color: #0b8ac8;
  text-decoration: none;
}

.news-link:hover {
  text-decoration: underline;
}


/* Footer */
.site-footer { background:#222; color:#aaa; padding:80px 0 40px; }
.footer-widgets { display:flex; flex-wrap:wrap; gap:40px; }
.footer-widgets .widget { flex:1; min-width:250px; }
.footer-widgets h4 { color:#fff; margin-0 0 16px; }
.footer-widgets p, .footer-widgets strong, .footer-widgets span { color:#aaa; }
.footer-widgets .social-links a { margin-0 8px; color:#aaa; }
.footer-bottom { text-align:center; padding:24px 0 0; font-size:0.9rem; color:#666; }

/* Hero Slider */
#heroSlider {
  position: relative;
  width: 100%;
  height: 90vh;
  overflow: hidden;
}

#heroSlider .carousel-item {
  background-size: cover;
  background-position: center;
  height: 90vh;
  position: relative;
}

.carousel-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.20);
}

.carousel-caption {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 8%;
  right: 8%;
  text-align: left;
  color: #fff;
  max-width: 650px;
}

.carousel-caption h1 {
  font-size: 2.8rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
}

.carousel-caption h2 {
  font-size: 2rem;
  font-weight: 500;
  margin-bottom: 1rem;
}

.carousel-caption .highlight {
  color: #1e75d9;
}

.carousel-caption p {
  font-size: 1.1rem;
  margin-bottom: 1.5rem;
  color: #eee;
}

.carousel-caption .btn-primary {
  background-color: #1e75d9;
  border-color: #1e75d9;
  padding: 12px 28px;
  font-weight: 600;
  letter-spacing: 0.5px;
}

.carousel-caption .btn-primary:hover {
  background-color: #155fb0;
  border-color: #155fb0;
}

/* Indicators and controls */
.carousel-indicators [data-bs-target] {
  background-color: #fff;
  opacity: 0.8;
}
.carousel-indicators .active {
  background-color: #00b894;
}
.carousel-control-prev-icon,
.carousel-control-next-icon {
  filter: invert(1);
}

/* Remove underline from all links */
a {
  text-decoration: none!important;
}

/* Optional: remove underline on hover too */
a:hover {
  text-decoration: none!important;
}

/* Ensure headings are clean */
h1, h2, h3, h4, h5, h6 {
  text-decoration: none!important;
}

/* Optional: override Bootstrap utility classes if needed */
.text-decoration-underline {
  text-decoration: none !important;
}

:root {
  --bs-primary: #1e75d9;
}

/* Optional: override Bootstrap button styles */
.btn-primary {
  background-color: #1e75d9;
  border-color: #1e75d9;
}

.btn-primary:hover,
.btn-primary:focus {
  background-color: #155fb0;
  border-color: #155fb0;
}

/* Optional: CTA banner background */
.cta-banner {
  background-color: #1e75d9;
}

/* Optional: link styling */
a {
  color: #1e75d9;
  text-decoration: none;
}

a:hover {
  color: #155fb0;
  text-decoration: none;
}
/* Refine icon size and hover */
.bi {
  font-size: 1.1rem;
  transition: color 0.3s ease;
}

a.text-primary:hover {
  color: #333!important;
	
}
.text-primary
{color: #333!important;}

/* Topbar contact and social icons in black */
.topbar-contact span,
.topbar-contact i,
.topbar-social a,
.topbar-social i {
  color: #000;
  text-decoration: none;
  font-size: 0.95rem;
}

.topbar-social a:hover,
.topbar-contact span:hover {
  color: #1e75d9;
}

.header-cta .btn-primary {
  background-color: #1e75d9;
  border-color: #1e75d9;
  font-size: 0.85rem;
  padding: 0.4rem 0.75rem;
}

.header-cta .btn-primary:hover {
  background-color: #155fb0;
  border-color: #155fb0;
}

/* Optional: shrink icon size slightly */

.navbar-toggler {
  background-color: #1e75d9!important;     /* Primary background */
  border: none;                  /* No border */
  box-shadow: none;              /* No shadow */
  padding: 0.4rem 0.6rem;
  border-radius: 4px;
}

.navbar-toggler:focus,
.navbar-toggler:active {
  box-shadow: none!important;              /* No shadow on focus */
  outline: none!important;                 /* No outline */
}

.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='white' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")!important;
  background-size: contain;
  width: 1.5rem;
  height: 1.5rem;
  color: white!important;
}

.navbar-nav .nav-link {
  color: #fff;
  font-weight: 600;
  transition: 0.3s ease;
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active {
  color: #1e75d9 !important;
  
  padding-bottom: 5px;
}
/* Optional: hover effect */
.navbar-toggler:hover {
  opacity: 0.7;
}

.topbar-contact i {
  color: #112c6c;
}

/* Topbar social icons */
.topbar-social a,
.topbar-social i {
  color: #112c6c;
  text-decoration: none;
}

/* Optional: hover effect */
.topbar-social a:hover {
  color: #1e75d9;
}

.services-cards {
  margin-top: 2rem;
}

.service-card {
  background-color: #112c6c !important;
  color: #fff;
  padding: 2rem 1.5rem;
  border: none;
  border-radius: 8px;
  box-shadow: none;
  transition: transform 0.3s ease;
  height: 100%;
}

.service-card:hover {
  transform: translateY(-5px);
}

.service-card h4 {
  margin-top: 1rem;
  font-size: 1.25rem;
  font-weight: 600;
}

.service-card p {
  font-size: 0.95rem;
  margin-top: 0.5rem;
  color: white;
}

.card-thumbnail {
  width: 100%;
  height: auto;
  object-fit: contain;
  margin-bottom: 0.5rem;
}

.client-logos-scroll {
  overflow: hidden;
}

.logo-strip {
  overflow: hidden;
  position: relative;
}

.logo-track {
  display: flex;
  gap: 2rem; /* spacing between logos */
  animation: scrollLogos 40s linear infinite;
}

.logo-item {
  flex-shrink: 0;
}

/*.....Swiper......*/
.swiper-button-prev, .swiper-button-next {
    pointer-events: auto;
    width: 48px;
    height: 48px;
    background-color: transparent!important;
    color: #112c6c;
    border-radius: 50%;
    box-shadow:none!important;
}

.swiper{
	margin: 0 40px!important;
}
.client-carousel {
  position: relative;
	
}

.client-logo {
  height: 100px;
  width: auto;
  object-fit: contain;
  opacity: 0.85;
  transition: opacity 0.3s ease, transform 0.3s ease;
	padding: 10px!important;
}

.client-logo:hover {
  opacity: 1;
  transform: scale(1.05);
}

/* Swiper container padding to avoid overlap */
.clientSwiper {
  padding: 0 80px; /* creates space for buttons */
}

/* Navigation buttons outside logo strip */
.carousel-nav {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  z-index: 10;
  display: flex;
  justify-content: space-between;
  transform: translateY(-50%);
  pointer-events: none; /* allows logos to be clickable */
}

.swiper-button-prev,
.swiper-button-next {
  pointer-events: auto; /* re-enable click on buttons */
  width: 48px;
  height: 48px;
  background-color: #fff;
  color: #112c6c;
  border-radius: 50%;
  box-shadow: 0 0 10px rgba(0,0,0,0.15);
}

.swiper-button-prev::after,
.swiper-button-next::after {
  font-size: 1.2rem;
  color: #112c6c;
}


.finance-banking {
  background-color: #9bcde3;
  color: #000; /* Optional: adjust for contrast */
	padding: 80px 0;
}

.finance-banking h3 {
  font-weight: 600;
  margin-bottom: 1rem;
}

.finance-banking p {
  font-size: 1rem;
  max-width: 700px;
  margin: 0 0 16px 0;
}

.site-footer {
  background-color: #112c6c;
}

.site-footer h5,
.site-footer h6 {
  font-weight: 600;
  color: #fff;
}

.site-footer p,
.site-footer a {
  color: #e0e0e0;
  font-size: 0.95rem;
}

.footer-link {
  text-decoration: none;
  display: block;
  margin-bottom: 0.5rem;
  transition: color 0.3s ease;
}

.footer-link:hover {
  color: #0b8ac8;
}

.social-icons a {
  font-size: 1.2rem;
  transition: color 0.3s ease;
}

.social-icons a:hover {
  color: #0b8ac8;
}
.footer-bottom {
  border-color: rgba(255, 255, 255, 0.1);
}

.footer-bottom p {
  color: #e0e0e0;
  font-size: 0.85rem;
}

.footer-link {
  color: #0b8ac8;
  text-decoration: none;
}

.footer-link:hover {
  text-decoration: underline;
}
.site-footer a { color: #fff; }

html { scroll-behavior: smooth; }
/* Back To Top Button */
#backToTop {
  position: fixed;
  bottom: 25px;
  right: 25px;
  width: 45px;
  height: 45px;
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 999;
  opacity: 0.9;
}

#backToTop:hover {
  opacity: 1;
}

.topbar-contact a {
  color: #000!important; 
  
}

.topbar-contact a:hover {
  color: #0d6efd; /* Bootstrap primary color */
  text-decoration: underline;
}


.section-title {
font-weight: 700;
margin-bottom: 20px;
color: #043e7d;
}
.core-values i {
font-size: 2rem;
color: #043e7d;
margin-bottom: 10px;
}

.hero-services {
background: #112c6c;
color: #fff;
padding: 40px 0;
text-align: center;
}
.section-title {
font-weight: 700;
color: #ffffff;
margin-bottom: 20px;
}
.section-title {
font-weight: 700;
color: #112c6c;
margin-bottom: 20px;
}
.service-card {
  background: #f8f9fa!important; /* Light background */
  border: 1px solid #e5e5e5;
  padding: 30px;
  border-radius: 12px;
  transition: all 0.3s ease-in-out;
  height: 100%;
}

.service-card i {
  font-size: 42px;
  margin-bottom: 15px;
  color: #005baa; /* Change to your theme color */
}

.service-card h5 {
  font-weight: 600;
  margin-bottom: 10px;
 color: #112c6c;
}

.service-card p{
	color: #112c6c;
}

.service-card:hover {
  background: #ffffff;
  box-shadow: 0px 8px 25px rgba(0, 0, 0, 0.08);
  transform: translateY(-5px);
  border-color: transparent;
}
.hero-testimonial {
background: linear-gradient(rgba(4,62,125,0.85), rgba(4,62,125,0.85)), url('testimonial-banner.jpg') center/cover no-repeat;
color: #fff;
padding: 40px 0;
text-align: center;
}
.section-title {
font-weight: 700;
color: #043e7d;
margin-bottom: 20px;
}
.testimonial-card {
background: #fff;
border-radius: 12px;
padding: 30px;
height: 100%;
text-align: center;
border: 1px solid rgba(0,0,0,0.08);
transition: all 0.3s ease;
}
.testimonial-card:hover {
transform: translateY(-6px);
box-shadow: 0 10px 20px rgba(0,0,0,0.1);
}
.testimonial-card i {
font-size: 2rem;
color: #043e7d;
margin-bottom: 15px;
}
.client-photo {
width: 70px;
height: 70px;
border-radius: 50%;
object-fit: cover;
margin-bottom: 10px;
border: 3px solid #043e7d;
}