.card-section {
  overflow: hidden;
}

/* Wrapper untuk area gambar + overlay + tombol */
.image-wrapper {
  position: relative;
}

.image-wrapper img {
  display: block;
  width: 100%;
  height: auto;
}

/* Overlay putih transparan */
.overlay-white {
  position: absolute;
  border-radius: 4px;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0.6) 0%,
    /* Mulai dari 0% */ rgba(255, 255, 255, 0.3) 50%,
    /* 30% dari atas masih agak putih */ rgba(255, 255, 255, 0.2) 100%
      /* Hampir habis di tengah bawah rgba(255, 255, 255, 0) 100% */
      /* Transparan total di bawah */
  );
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 1;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
}

/* Tombol di tengah gambar */
.button-detail {
  background-color: #0d6efd;
  padding: 10px;
  border-radius: 5px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 2;
  -webkit-transition: opacity 0.3s ease;
  -moz-transition: opacity 0.3s ease;
  -ms-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

/* Hover hanya di dalam area gambar */
.image-wrapper:hover .overlay-white,
.image-wrapper:hover .button-detail {
  opacity: 1;
}

.social-icons a {
  color: #555;
  margin: 0 8px;
  font-size: 1.25rem;
  transition: color 0.3s;
}

.social-icons a:hover {
  color: #0d6efd;
}
