/* Smaller blockquote for careers growth card */
.small-blockquote {
  font-size: 0.92rem;
  line-height: 1.4;
  padding: 0.75rem 1rem;
  margin-bottom: 0.5rem;
}
.small-blockquote-text {
  font-size: 0.95em;
  line-height: 1.4;
  margin-bottom: 0.25rem;
}
.small-blockquote-footer {
  font-size: 0.85em;
  color: #888;
  margin-top: 0.25rem;
}
.growth-card blockquote p {
  font-size: 0.98rem;
}
/* Growth Card UI for Careers Page */
.growth-card {
  background: linear-gradient(120deg, #f8faff 60%, #e3eaf3 100%);
  border: 1.5px solid #e3eaf3;
}
.growth-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  font-size: 1.7rem;
  border-radius: 50%;
  margin: 0 0.2rem 0.7rem 0.2rem;
  box-shadow: 0 2px 8px rgba(0,65,117,0.10);
  color: #fff;
}
.growth-icon-sm {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  font-size: 1.1rem;
  border-radius: 50%;
  box-shadow: 0 1px 4px rgba(0,65,117,0.10);
  color: #fff;
  flex-shrink: 0;
}
.bg-expertise { background: linear-gradient(135deg,#0096ff 60%,#004175 100%); }
.bg-collab { background: linear-gradient(135deg,#43cea2 60%,#185a9d 100%); }
.bg-learn { background: linear-gradient(135deg,#ffd700 60%,#ff9800 100%); }
.bg-fresh { background: linear-gradient(135deg,#8e54e9 60%,#4776e6 100%); }
.bg-global { background: linear-gradient(135deg,#fc466b 60%,#3f5efb 100%); }
.growth-point {
  background: #fff;
  border: 1px solid #e3eaf3;
  transition: box-shadow 0.18s, border-color 0.18s;
}
.growth-point:hover {
  box-shadow: 0 4px 18px rgba(0,65,117,0.10);
  border-color: #b3d4fc;
}
.blockquote.bg-light {
  border-left: 0.4rem solid #0096ff;
}
/* Portfolio Areas Card UI */
.portfolio-areas-card {
  background: linear-gradient(120deg, #f8faff 60%, #e3eaf3 100%);
  border: 1.5px solid #e3eaf3;
}
.portfolio-areas-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  font-size: 2rem;
  border-radius: 50%;
  margin: 0 0.3rem 0.7rem 0.3rem;
  box-shadow: 0 2px 8px rgba(0,65,117,0.10);
  color: #fff;
}
.portfolio-areas-icon-sm {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  font-size: 1.3rem;
  border-radius: 50%;
  box-shadow: 0 1px 4px rgba(0,65,117,0.10);
  color: #fff;
  flex-shrink: 0;
}
.bg-blockchain { background: linear-gradient(135deg,#0096ff 60%,#004175 100%); }
.bg-health { background: linear-gradient(135deg,#43cea2 60%,#185a9d 100%); }
.bg-accounting { background: linear-gradient(135deg,#ffd700 60%,#ff9800 100%); }
.bg-pharma { background: linear-gradient(135deg,#8e54e9 60%,#4776e6 100%); }
.bg-iot { background: linear-gradient(135deg,#00c6ff 60%,#0072ff 100%); }
.bg-apps { background: linear-gradient(135deg,#fc466b 60%,#3f5efb 100%); }
.portfolio-area-item {
  background: #fff;
  border: 1px solid #e3eaf3;
  transition: box-shadow 0.18s, border-color 0.18s;
}
.portfolio-area-item:hover {
  box-shadow: 0 4px 18px rgba(0,65,117,0.10);
  border-color: #b3d4fc;
}
.feature-list-row li span:last-child {
  text-align: left !important;
  display: block;
  width: 100%;
}
.feature-list-row {
  width: 100%;
}
/* Table-row style: icon left, text right, vertically centered */
/* Table-row style: icon left, text right, vertically centered, left-aligned text */
.feature-list-row li {
  display: flex;
  align-items: center;
  gap: 1.1rem;
  margin-bottom: 1.1rem;
  font-size: 1.13rem;
  text-align: left;
}
.feature-list-row li span:last-child {
  display: inline-block;
  vertical-align: middle;
}
@media (max-width: 767.98px) {
  .feature-list-row li { gap: 0.7rem; margin-bottom: 0.7rem; font-size: 1rem; }
}
/* Vertically centered two-column layout for expertise points */
.feature-list-vertical li {
  display: flex;
  align-items: center;
  gap: 1.1rem;
  margin-bottom: 1.1rem;
}
.feature-list-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.feature-list-title {
  font-weight: 600;
  font-size: 1.13rem;
  color: #004175;
}
.feature-list-desc {
  font-size: 1.02rem;
  color: #444;
  margin-top: 0.1rem;
}
@media (max-width: 767.98px) {
  .feature-list-vertical li { gap: 0.7rem; margin-bottom: 0.7rem; }
  .feature-list-title { font-size: 1rem; }
  .feature-list-desc { font-size: 0.95rem; }
}
/* Small icon for each commitment point */
/* Slightly larger icon for each commitment point */
/* Modern icon design for expertise points */
.feature-icon-small {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
  color: #fff;
  background: linear-gradient(135deg, #e3eaf3 0%, #b3d4fc 100%);
  border: 1.5px solid #0096ff;
  box-shadow: 0 2px 8px rgba(0,150,255,0.10), 0 1.5px 6px rgba(0,0,0,0.04);
  vertical-align: middle;
  margin-right: 0.5rem;
  transition: box-shadow 0.18s, border-color 0.18s;
}
.feature-icon-small.bg-expertise {
  background: linear-gradient(135deg, #0096ff 0%, #004175 100%);
  border-color: #004175;
}
.feature-icon-small.bg-doc {
  background: linear-gradient(135deg, #ffd700 0%, #0096ff 100%);
  border-color: #ffd700;
}
.feature-icon-small.bg-secure {
  background: linear-gradient(135deg, #004175 0%, #ffd700 100%);
  border-color: #004175;
}
.feature-icon-small.bg-arch {
  background: linear-gradient(135deg, #0096ff 0%, #3f5efb 100%);
  border-color: #0096ff;
}
.feature-icon-small:hover {
  box-shadow: 0 4px 16px rgba(0,150,255,0.16);
  border-color: #3f5efb;
}
/* Vertical icon cluster for commitment feature card */
.commitment-feature-icons-vertical {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.7rem;
  padding: 2rem 0 2rem 0;
  z-index: 3;
  background: none;
}
.feature-icons-overlap-vertical {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  z-index: 3;
}
@media (max-width: 767.98px) {
  .commitment-feature-icons-vertical { padding: 1.2rem 0; gap: 0.4rem; }
  .feature-icons-overlap-vertical { position: static; left: 0; top: 0; transform: none; margin-bottom: 1.2rem; }
}
/* Enhanced Commitment Feature Card */
/* Make the commitment card full width within its container, matching domain cards */
/* Center the commitment card and set a max width for balance */
.commitment-feature-card {
  width: 100%;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
  background: linear-gradient(120deg, #f8faff 60%, #e3eaf3 100%);
  border-radius: 2rem;
  box-shadow: 0 8px 32px rgba(0,65,117,0.10);
  overflow: hidden;
  padding: 0;
  position: relative;
  transition: box-shadow 0.2s, transform 0.2s;
}
.commitment-feature-card:hover {
  box-shadow: 0 16px 48px rgba(0,65,117,0.16);
  transform: translateY(-4px) scale(1.01);
}
.feature-gradient-overlay {
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(135deg, rgba(0,150,255,0.04) 0 20px, rgba(255,215,0,0.04) 20px 40px);
  pointer-events: none;
  z-index: 1;
}
.feature-ribbon {
  position: absolute;
  top: 18px;
  left: -38px;
  background: linear-gradient(90deg, #0096ff 60%, #ffd700 100%);
  color: #fff;
  font-weight: 700;
  font-size: 1rem;
  padding: 0.5rem 2.5rem;
  border-radius: 1.5rem;
  box-shadow: 0 2px 8px rgba(0,65,117,0.10);
  letter-spacing: 0.05em;
  z-index: 2;
  transform: rotate(-18deg);
}
.feature-icons-overlap {
  position: absolute;
  left: 50%;
  top: -32px;
  transform: translateX(-50%);
  z-index: 3;
  background: none;
}
.feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.5rem;
  color: #fff;
  box-shadow: 0 2px 8px rgba(0,65,117,0.10);
  border: 3px solid #fff;
}
.feature-icon.bg-expertise { background: linear-gradient(135deg,#004175 60%,#0096ff 100%); }
.feature-icon.bg-doc { background: linear-gradient(135deg,#0096ff 60%,#ffd700 100%); }
.feature-icon.bg-secure { background: linear-gradient(135deg,#004175 60%,#ffd700 100%); }
.feature-icon.bg-arch { background: linear-gradient(135deg,#0096ff 60%,#004175 100%); }
.feature-title {
  color: #004175;
  font-weight: 700;
  font-size: 2rem;
  z-index: 2;
  position: relative;
}
/* Vertically center icon and text in each commitment point */
.feature-list li {
  font-size: 1.13rem;
  margin-bottom: 0.7rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  z-index: 2;
  position: relative;
}
.feature-list .checkmark {
  color: #0096ff;
  font-size: 1.3rem;
  margin-top: 0.1rem;
  flex-shrink: 0;
  display: inline-block;
}
@media (max-width: 767.98px) {
  .commitment-feature-card { border-radius: 1.2rem; }
  .feature-title { font-size: 1.3rem; }
  .feature-icons-overlap { position: static; left: 0; top: 0; transform: none; margin-bottom: 1.2rem; }
  .feature-icon { width: 44px; height: 44px; font-size: 1.3rem; }
  .feature-list li { font-size: 1rem; }
  .feature-ribbon { left: 10px; top: 10px; font-size: 0.9rem; padding: 0.4rem 1.2rem; }
}
/* Commitment Feature Card (horizontal, unified) */
.commitment-feature-card {
  max-width: 1000px;
  background: linear-gradient(120deg, #f8faff 60%, #e3eaf3 100%);
  border-radius: 2rem;
  box-shadow: 0 8px 32px rgba(0,65,117,0.10);
  overflow: hidden;
  padding: 0;
}
.commitment-feature-icons {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 1.2rem;
  padding: 2rem 0 2rem 0;
}
.feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.5rem;
  color: #fff;
  box-shadow: 0 2px 8px rgba(0,65,117,0.10);
  border: 3px solid #fff;
}
.feature-icon.bg-expertise { background: linear-gradient(135deg,#004175 60%,#0096ff 100%); }
.feature-icon.bg-doc { background: linear-gradient(135deg,#0096ff 60%,#ffd700 100%); }
.feature-icon.bg-secure { background: linear-gradient(135deg,#004175 60%,#ffd700 100%); }
.feature-icon.bg-arch { background: linear-gradient(135deg,#0096ff 60%,#004175 100%); }
.feature-title {
  color: #004175;
  font-weight: 700;
  font-size: 2rem;
}
.feature-list li {
  font-size: 1.13rem;
  margin-bottom: 0.7rem;
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
}
.feature-list .checkmark {
  color: #0096ff;
  font-size: 1.3rem;
  margin-top: 0.1rem;
  flex-shrink: 0;
}
@media (max-width: 767.98px) {
  .commitment-feature-card { border-radius: 1.2rem; }
  .feature-title { font-size: 1.3rem; }
  .commitment-feature-icons { gap: 0.7rem; padding: 1.2rem 0; }
  .feature-icon { width: 44px; height: 44px; font-size: 1.3rem; }
  .feature-list li { font-size: 1rem; }
}
/* Commitment Timeline/Stepper UI */
.commitment-timeline {
  max-width: 600px;
  background: none;
  padding: 0 0 2rem 0;
}
.timeline-list {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
}
.timeline-step {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  margin-bottom: 0;
  width: 100%;
  position: relative;
}
.timeline-step:not(:last-child) {
  margin-bottom: 0.5rem;
}
.timeline-icon {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.5rem;
  color: #fff;
  box-shadow: 0 2px 8px rgba(0,65,117,0.10);
  flex-shrink: 0;
}
.bg-expertise-tl { background: linear-gradient(135deg,#004175 60%,#0096ff 100%); }
.bg-doc-tl { background: linear-gradient(135deg,#0096ff 60%,#ffd700 100%); }
.bg-secure-tl { background: linear-gradient(135deg,#004175 60%,#ffd700 100%); }
.bg-arch-tl { background: linear-gradient(135deg,#0096ff 60%,#004175 100%); }
.timeline-connector {
  width: 4px;
  height: 32px;
  background: linear-gradient(180deg, #e3eaf3 60%, #b3d4fc 100%);
  margin: 0.2rem 0 0.2rem 30px;
  border-radius: 2px;
}
.timeline-step > div:last-child {
  text-align: left;
}
@media (max-width: 600px) {
  .commitment-timeline { max-width: 98vw; }
  .timeline-step { gap: 1rem; }
  .timeline-icon { width: 48px; height: 48px; font-size: 1.6rem; }
  .timeline-connector { margin-left: 20px; }
}
/* Colorful tile backgrounds for commitment section */
.colorful-tile {
  background: linear-gradient(135deg, #e0f7fa 0%, #b2ebf2 100%);
  border: none;
}
.colorful-tile-2 {
  background: linear-gradient(135deg, #fffde7 0%, #ffe082 100%);
  border: none;
}
.colorful-tile-3 {
  background: linear-gradient(135deg, #f3e5f5 0%, #ce93d8 100%);
  border: none;
}
.colorful-tile-4 {
  background: linear-gradient(135deg, #e8f5e9 0%, #a5d6a7 100%);
  border: none;
}
.large-icon {
  font-size: 3.2rem !important;
  width: 80px;
  height: 80px;
  min-width: 80px;
  min-height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
}
/* Glassmorphism Commitment Card UI */
.commitment-glass-card {
  background: rgba(255,255,255,0.85);
  border-radius: 1.5rem;
  box-shadow: 0 8px 32px rgba(0,65,117,0.10);
  max-width: 1200px;
  padding: 2.5rem 1rem 2rem 1rem;
  backdrop-filter: blur(6px);
  border: 1.5px solid rgba(0,65,117,0.08);
}
.commitment-glass-item {
  background: rgba(255,255,255,0.7);
  border-radius: 1rem;
  box-shadow: 0 2px 12px rgba(0,65,117,0.07);
  border: 1px solid #e3eaf3;
  transition: box-shadow 0.2s, border-color 0.2s, transform 0.2s;
  position: relative;
}
.commitment-glass-item:hover {
  box-shadow: 0 6px 24px rgba(0,65,117,0.13);
  border-color: #b3d4fc;
  transform: translateY(-4px) scale(1.03);
  z-index: 2;
}
.commitment-glass-icon {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  color: #fff;
  box-shadow: 0 2px 8px rgba(0,65,117,0.10);
}
.bg-expertise { background: linear-gradient(135deg,#004175 60%,#0096ff 100%); }
.bg-doc { background: linear-gradient(135deg,#0096ff 60%,#ffd700 100%); }
.bg-secure { background: linear-gradient(135deg,#004175 60%,#ffd700 100%); }
.bg-arch { background: linear-gradient(135deg,#0096ff 60%,#004175 100%); }
/* Commitment section modern card UI */
.commitment-card {
  background: #fff;
  border-radius: 1rem;
  box-shadow: 0 2px 16px rgba(0,65,117,0.08);
  max-width: 1100px;
}
.commitment-item {
  background: #f8faff;
  border: 1px solid #e3eaf3;
  transition: box-shadow 0.2s, border-color 0.2s;
}
.commitment-item:hover {
  box-shadow: 0 4px 18px rgba(0,65,117,0.10);
  border-color: #b3d4fc;
}
.commitment-icon {
  font-size: 2.5rem;
  color: #004175;
}
html, body {
  height: 100%;
}
body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
main {
  flex: 1 0 auto;
}
footer.footer {
  flex-shrink: 0;
}
/* Responsive Navbar Customization */
.navbar-nav .nav-link {
  font-weight: 500;
  color: #004175 !important;
  padding: 0.5rem 1rem;
  transition: color 0.2s;
}
.navbar-nav .nav-link:hover, .navbar-nav .nav-link.active {
  color: #0096ff !important;
}
.navbar-nav .text-muted {
  font-size: 1.2rem;
  user-select: none;
}
.navbar-toggler {
  border: none;
  outline: none;
}
.navbar-toggler:focus {
  box-shadow: none;
}
.navbar .container {
  justify-content: space-between !important;
}
.navbar-brand.logo {
  margin-right: auto !important;
}
.navbar-collapse {
  justify-content: flex-end !important;
}
@media (max-width: 991.98px) {
  .navbar-nav {
    background: #fff;
    border-radius: 0.5rem;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
    padding: 0.5rem 0.5rem;
  }
  .navbar-nav .text-muted {
    display: none !important;
  }
}
    body {
      font-family: 'Roboto', sans-serif;
      background-color: #f8faff;
    }
    .logo img,
    .navbar-brand img {
      max-height: 120px;
      width: auto;
      height: auto;
      max-width: 70vw;
    }
    
    @media (max-width: 767.98px) {
      .logo img,
      .navbar-brand img {
        max-height: 60px;
        max-width: 60vw;
      }
    }
    .hero-section {
      background: linear-gradient(rgba(0, 58, 115, 0.7), rgba(0, 58, 115, 0.7)),
        url('images/hero-bg.png') center/cover no-repeat;
      color: #fff;
      padding: 100px 0;
      text-align: center;
    }
    .hero-section h1 {
      font-weight: 700;
      font-size: 3rem;
    }
    .hero-section p {
      font-size: 1.5rem;
    }
    .btn-primary,
    .btn {
      background-color: #004175;
      border-color: #004175;
      color: white;
      padding: 10px 20px;
      border-radius: 5px;
      text-decoration: none;
    }
    .btn:hover {
      background-color: #0066cc;
      border-color: #0066cc;
      color: white;
      text-decoration: none;
    }
    .section-title {
      color: #004175;
      font-weight: 600;
      margin-bottom: 2rem;
      text-align: center;
    }
    .solution-grid {
      display: flex;
      gap: 2rem;
      justify-content: center;
      flex-wrap: wrap;
    }
    .solution-item {
      flex: 1 1 250px;
      max-width: 300px;
      background: white;
      padding: 20px;
      border-radius: 8px;
      box-shadow: 0 0 15px rgb(0 0 0 / 0.1);
      text-align: center;
    }
    .solution-item img {
      max-width: 90px;
      margin-bottom: 15px;
    }
    main section {
      padding: 4rem 0;
    }
    .about-section p {
      max-width: 700px;
      margin-left: auto;
      margin-right: auto;
      font-size: 1.1rem;
      line-height: 1.6;
      text-align: center;
    }
    footer.footer {
      background: linear-gradient(90deg, #00345a 60%, #0096ff 100%);
      color: #fff;
      text-align: center;
      padding: 2rem 0 1rem 0;
      margin-top: 4rem;
      border-top: 4px solid #ffd700;
      box-shadow: 0 -2px 12px rgba(0,0,0,0.06);
    }
    footer.footer p {
      margin: 0;
    }
    footer.footer .mb-2 {
      margin-bottom: 1.2rem !important;
      font-size: 1.08rem;
      color: #fff;
    }
    footer.footer strong {
      color: #ffd700;
      font-weight: 600;
    }
    
