.layanan-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  margin-top: 30px;

  align-items: stretch; /* penting untuk menyamakan tinggi */
}

.layanan-card {
  background: #eaeaea;
  border-radius: 40px;
  padding: 30px;
  border: 3px solid #333;
  transition: 0.3s;

  height: 420px !important;
  box-sizing: border-box; /* agar padding tidak menambah tinggi */

  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  text-align: center;
}

.layanan-img {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.layanan-img img {
  max-height: 150px;
  width: auto;
  object-fit: contain;
}

.layanan-title {
  font-size: 26px;
  font-weight: 700;
  margin-bottom: 10px;
}

.layanan-meta {
  display: flex;
  justify-content: center;
  gap: 30px;
  margin: 10px 0;
}

.layanan-btn {
  background: #666;
  color: white;
  padding: 10px 25px;
  border-radius: 30px;
  text-decoration: none;
  display: inline-block;
}

.layanan-card:hover {
  color: white;
}

.layanan-card:hover .layanan-title {
  color: white;
}

/* warna hover tiap kategori */

.administrasi:hover {
  background: #00539a;
}

.kesehatan:hover {
  background: #00a54e;
}

.sosial-humaniora:hover {
  background: #f58220;
}

/* filter */

.layanan-filter {
  display: flex;
  gap: 10px;
  margin-bottom: 20px;
}

.layanan-filter input,
.layanan-filter select {
  padding: 8px;
}

/* pagination */

.layanan-pagination {
  margin-top: 40px;
  text-align: center;
}

.layanan-pagination .page-numbers {
  display: inline-block;
  margin: 0 5px;
  padding: 8px 14px;
  border-radius: 20px;
  text-decoration: none;
  background: #f0f0f0;
  color: #333;
  font-weight: 500;
  transition: all 0.3s ease;
}

/* hover */
.layanan-pagination .page-numbers:hover {
  background: #333;
  color: #fff;
}

/* current page */
.layanan-pagination .page-numbers.current {
  background: #333;
  color: #fff;
}

/* prev & next */
.layanan-pagination .prev,
.layanan-pagination .next {
  font-weight: 600;
}

@media (max-width: 768px) {
  .layanan-grid {
    grid-template-columns: 1fr;
  }

  .layanan-card {
    height: auto;
  }
}
