div[class^="p-imagegrid-cat-"] {
  display: grid;
  justify-items: center;
  gap: 10px;
  overflow-x: auto;
  overflow-y: hidden;
  grid-auto-flow: column;
  grid-auto-columns: minmax(var(--img-width), auto);
  justify-items: center;
  padding-bottom: 3px;
}
.p-imagegrid-img {
  width: var(--img-width);
  height: var(--img-height);
  object-fit: cover;
  border-radius: var(--border-radius);
  transition: filter 0.3s ease;
}
div[class^="p-imagegrid-item-"] {
  position: relative;
  overflow: hidden;
  border-radius: var(--border-radius);
  border: 1px solid transparent;
  transition: 0.3s ease;
}
div[class^="p-imagegrid-item-"]:hover {
  border: 1px solid var(--border-color);
}
div[class^="p-imagegrid-item-"] img.p-imagegrid-img {
  transition: 0.3s ease;
}
div[class^="p-imagegrid-item-"]:hover img.p-imagegrid-img {
  scale: 1.05;
  filter: brightness(0.25);
}
.p-imagegrid-overlay {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
  flex-direction: column;
  color: rgb(199, 199, 199);
}
div[class^="p-imagegrid-item-"]:hover .p-imagegrid-overlay {
  opacity: 1;
}
.p-imagegrid-overlay > a {
  pointer-events: auto;
}
div.p-imagegrid-textswrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 80%;
}
a.p-imagegrid-iconlink {
  width: 35px;
  height: auto;
  transition: 0.3s ease;
}
a.p-imagegrid-iconlink:hover {
  scale: 1.25;
}
a.p-imagegrid-button {
  color: white;
  border: 1px solid transparent;
  background-color: green;
  border-radius: var(--border-radius);
  margin-top: 1rem;
  padding: 2px 12px 2px 12px;
  transition: 0.3s ease;
}
a.p-imagegrid-button:hover {
  color: var(--border-color);
  border: 1px solid var(--border-color);
}
div[class^="p-imagegrid-cat-"]::-webkit-scrollbar {
  height: 2px;
}
div[class^="p-imagegrid-cat-"]::-webkit-scrollbar-track {
  background: transparent;
  border-radius: 25px;
}
div[class^="p-imagegrid-cat-"]::-webkit-scrollbar-thumb {
  background-color: transparent;
  border-radius: 25px;
  transition: 0.3s ease;
}
div[class^="p-imagegrid-cat-"]:hover::-webkit-scrollbar-thumb {
  background-color: var(--border-color);
  border-radius: 25px;
}

@media (max-width: 1024px) {
  div[class^="p-imagegrid-cat-"] {
    grid-auto-columns: minmax(calc(var(--img-width) / 1.75), auto);
  }
  div[class^="p-imagegrid-item-"] img.p-imagegrid-img {
    transition: 0.3s ease;
    width: calc(var(--img-width) / 1.75);
    height: calc(var(--img-height) / 1.75);
  }
  a.p-imagegrid-iconlink {
    width: 20px;
  }
  .p-imagegrid-textswrap {
    font-size: 12px;
  }
  a.p-imagegrid-button {
    margin-top: 0.5rem;
    font-size: 12px;
    padding: 2px 10px 2px 10px;
  }
}
