.sidebar {
      position: sticky;
      top: 20px;
    }

    .sidebar .list-group-item {
      border: none;
      border-radius: 0;
      background-color: #f0f4fa;
      color: #333;
      font-weight: 500;
      cursor: pointer;
      min-height: 60px;
  padding: 1rem 1.25rem;
  display: flex;
  align-items: center;
  margin-bottom: 0.75rem;
  transition: all 0.3s ease;
    }
    

    .sidebar .list-group-item.active {
       background: linear-gradient(to right, #0044cc, #00aaff);
  color: #fff;
    }

    .sidebar .list-group-item a {
  display: flex;
  align-items: center;
  width: 100%;            /* so it stretches full-width */
  color: inherit;         /* inherit text color from the button */
  text-decoration: none;  /* remove underline */
  padding: 0;             /* let the button control the padding */
  margin: 0;              /* reset any default anchor margins */
}

/* Ensure the icon still has spacing */
.sidebar .list-group-item a .bi {
  margin-right: 0.75rem;  /* or whatever spacing you prefer */
}

    .section-title {
      font-size: 28px;
      font-weight: 700;
      margin-bottom: 20px;
    }

    .service-img {
      width: 100%;
      border-radius: 10px;
      margin-top: 20px;
    }

    .service-point {
      font-size: 17px;
      margin-bottom: 10px;
    }

    .sidebar .list-group-item:not(.active):hover {
  background-color: #e1f5fe;
  color: #0044cc;
  transform: translateX(5px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05);
}

.dot-circle {
  position: relative;
  font-size: 1.2rem;      /* Adjust as needed */
  color: #0044cc;         /* Blue circle outline */
  margin-right: 0.5rem;
}

/* Create the light blue dot inside the circle */
.dot-circle::after {
  content: "●";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 0.45em;      /* Size of inner dot */
  color: #0044cc;         /* Light blue dot */
}

.cta-button {
  text-align: center;
  margin-top: 20px;
}

.cta-button a {
  background-color: #00cfff;
  color: #000;
  padding: 10px 25px;
  text-decoration: none;
  font-weight: bold;
  border-radius: 30px;
  display: inline-block;
  transition: all 0.3s ease-in-out;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
  position: relative;
  overflow: hidden;
}

/* Hover effect */
.cta-button a:hover {
  background-color: #00b3e6;
  color: #fff;
  transform: scale(1.05);
  box-shadow: 0 6px 20px rgba(0, 188, 212, 0.6);
}

/* Optional: glow ring animation */
.cta-button a::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.15) 10%, transparent 10.01%);
  background-size: 10% 10%;
  animation: pulse 3s linear infinite;
  z-index: 0;
}

.cta-button a:hover::before {
  animation-play-state: paused;
}

@keyframes pulse {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(50%, 50%);
  }
}