/* 1. Hero Section */
.hero-section {
    background-color: #1e3370;
    background-image: repeating-radial-gradient(
        circle at center, 
        transparent, 
        transparent 40px, 
        rgba(255, 255, 255, 0.05) 41px, 
        rgba(255, 255, 255, 0.05) 42px
    );
    padding: 150px 0 100px 0;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
}
.badge-outline-light {
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: #ffffff;
    background-color: transparent;
}

.ih-locations { padding: 90px 0 70px; background-color: #ffffff; }
.ih-section-head { text-align: center; max-width: 620px; margin: 0 auto 40px; }
.ih-section-head h2 { font-size: 36px; margin-bottom: 12px; color: #14192b; }
.ih-section-head p { color: #6a7086; font-size: 16px; line-height: 1.6; }

.ih-map { max-width: 900px; margin: 0 auto 10px; opacity: 0.9; }
.ih-map-svg { width: 100%; height: auto; }
.ih-pin { fill: #1e3370; }

.ih-loc-scroll {
  display: flex;
  gap: 20px;
  overflow-x: auto;
  padding: 30px 6px 20px;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}
.ih-loc-scroll::-webkit-scrollbar { display: none; }
.ih-loc-card {
  flex: 0 0 260px;
  scroll-snap-align: start;
  background-color: #ffffff;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid #eceef4;
}
.ih-loc-img { height: 130px; background-color: #1e3370; background-size: cover; background-position: center; }
.ih-loc-img-1 { background-image: linear-gradient(135deg, #1e3370, #33508f); }
.ih-loc-img-2 { background-image: linear-gradient(135deg, #2a3f7c, #4863a3); }
.ih-loc-img-3 { background-image: linear-gradient(135deg, #16265a, #2e4489); }
.ih-loc-img-4 { background-image: linear-gradient(135deg, #1e3370, #5876c2); }
.ih-loc-img-5 { background-image: linear-gradient(135deg, #24397a, #6a86d1); }
.ih-loc-img-6 { background-image: linear-gradient(135deg, #182a63, #3e58a0); }
.ih-loc-body { padding: 18px 20px 22px; }
.ih-loc-tag {
  display: inline-block;
  background-color: #eaeefb;
  color: #1e3370;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 50px;
  margin-bottom: 8px;
}
.ih-loc-body h3 { font-size: 18px; margin-bottom: 10px; }
.ih-loc-body p {
  font-size: 13px;
  color: #6a7086;
  line-height: 1.55;
  margin-bottom: 6px;
  display: flex;
  gap: 8px;
}
.ih-loc-body p i { color: #1e3370; margin-top: 2px; }

.ih-loc-arrows { display: flex; justify-content: center; gap: 14px; margin-top: 10px; }
.ih-loc-arrows button {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 1.5px solid #1e3370;
  background-color: #ffffff;
  color: #1e3370;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.ih-loc-arrows button:hover { background-color: #1e3370; color: #ffffff; }

.ih-contact { padding: 70px 0 100px; background-color: #f6f7fb; }

.ih-contact-info { padding: 10px 0; }
.ih-info-item { display: flex; gap: 18px; margin-bottom: 34px; }
.ih-info-icon {
  flex: 0 0 46px;
  height: 46px;
  width: 46px;
  border-radius: 12px;
  background-color: #1e3370;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 17px;
}
.ih-info-item h4 { font-size: 17px; margin-bottom: 6px; color: #14192b; }
.ih-info-item p { color: #6a7086; font-size: 14px; margin-bottom: 4px; }
.ih-info-value { color: #14192b !important; font-weight: 600; font-size: 14px !important; }
.ih-info-value a { color: #1e3370; }

.ih-social-row { display: flex; gap: 12px; margin-top: 10px; }
.ih-social-row a {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1.5px solid #d6dae8;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #1e3370;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.ih-social-row a:hover { background-color: #1e3370; border-color: #1e3370; color: #ffffff; }

.ih-form-card {
  background-color: #1e3370;
  background-image: linear-gradient(150deg, #1e3370 0%, #16265a 100%);
  border-radius: 26px;
  padding: 44px;
  height: 100%;
}
.ih-form-card h3 {
  color: #ffffff;
  font-size: 26px;
  line-height: 1.35;
  margin-bottom: 26px;
}
.ih-input {
  width: 100%;
  border: none;
  border-radius: 12px;
  padding: 14px 18px;
  font-size: 14px;
  color: #14192b;
  background-color: #ffffff;
  outline: none;
}
.ih-input::placeholder { color: #8b90a3; }
.ih-input:focus { box-shadow: 0 0 0 3px rgba(255,255,255,0.4); }
textarea.ih-input { resize: vertical; min-height: 90px; }

.ih-phone-group { display: flex; gap: 8px; }
.ih-code-select { flex: 0 0 110px; padding-left: 10px; padding-right: 6px; }

.ih-topic-label { color: #dfe4f5; font-size: 13px; font-weight: 600; margin-bottom: 10px; }
.ih-topic-pills { display: flex; flex-wrap: wrap; gap: 10px; }
.ih-topic {
  background-color: rgba(255,255,255,0.12);
  color: #ffffff;
  border: 1px solid rgba(255,255,255,0.3);
  padding: 7px 16px;
  border-radius: 50px;
  font-size: 13px;
  font-weight: 500;
  transition: background-color 0.2s ease;
}
.ih-topic.active, .ih-topic:hover { background-color: #ffffff; color: #1e3370; }

.ih-submit-btn {
  width: 100%;
  background-color: #ffffff;
  color: #1e3370;
  border: none;
  border-radius: 12px;
  padding: 15px;
  font-weight: 700;
  font-size: 15px;
  margin-top: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  transition: background-color 0.2s ease, transform 0.2s ease;
}
.ih-submit-btn:hover { background-color: #e7ebf6; transform: translateY(-2px); }

.ih-form-success {
  display: none;
  color: #d8fce3;
  background-color: rgba(46,204,113,0.18);
  border: 1px solid rgba(46,204,113,0.4);
  padding: 12px 16px;
  border-radius: 10px;
  font-size: 13px;
  margin-top: 16px;
  text-align: center;
}
.ih-form-success.ih-show { display: block; }


#ihLocScroll {
    max-width: 1500px;
   
}

/* 6. Trust Section */
.grayscale-logos span {
    transition: opacity 0.3s ease;
}
.grayscale-logos span:hover {
    opacity: 1 !important;
}

/* 7. Testimonials Section */
.testimonial-carousel-container {
    overflow-x: auto;
    scroll-behavior: smooth;
    max-width: 900px;
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.testimonial-carousel-container::-webkit-scrollbar {
    display: none;
}
.testimonial-card {
    width: 320px;
    border-radius: 12px;
}
.btn-outline-navy {
    color: #1e3370;
    border: 1px solid #1e3370;
    background-color: transparent;
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.btn-outline-navy:hover {
    background-color: #1e3370;
    color: #ffffff;
}

/* 8. CTA Section */
.cta-card {
    background-color: #1e3370;
    background-image: repeating-radial-gradient(
        circle at center, 
        transparent, 
        transparent 30px, 
        rgba(255, 255, 255, 0.08) 31px, 
        rgba(255, 255, 255, 0.08) 32px
    );
}

