.brand-logo {
  height: 30px;
  border-radius: 50%;
  margin-right: 8px;
}

.gradient-background {
  background: linear-gradient(300deg, #00bfff, #ff4c68, #ef8172);
  background-size: 180% 180%;
  animation: gradient-animation 18s ease infinite;
}

@keyframes gradient-animation {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

.link-hover-blue {
  color: inherit; /* Reset to match parent text color */
  text-decoration: none; /* Optional: remove underline */
}

.link-hover-blue:hover {
  color: #0d6efd !important; /* Bootstrap's primary blue */
  text-decoration: underline; /* Optional: show underline on hover */
}

.profile-img {
  /* max-width: 280px; */
  border-radius: 20px;
}

.icon-square {
  width: 3rem;
  height: 3rem;
  border-radius: 0.75rem;
}

.icon-border {
  border-radius: 0.75rem;
}

.card-bg-image {
  background-size: cover; /* fills the div */
  background-position: center; /* center the image */
  background-repeat: no-repeat; /* prevents repeating */
  /* height: 300px;                 required to see image */
}

.card-bg-image::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.7); /* opacity layer */
}

.card-bg-image * {
  position: relative;
  z-index: 1;
}

.project-image {
  max-height: 350px;
  width: 100%;
  object-fit: contain;
  border-radius: 12px;
}
