.galerieBox {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2rem;
}

.galerieBox > div {
  width: calc(25% - (3 * 2rem / 4));
  background: #fff;
  box-shadow: var(--box-shadow);
}

@media screen and (max-width:1200px) {
  .galerieBox > div {
    width: calc(33.3% - (2 * 2rem / 3));
  }
}

@media screen and (max-width:900px) {
  .galerieBox > div {
    width: calc(50% - (2rem / 2));
  }
}

@media screen and (max-width:600px) {
  .galerieBox > div {
    width: 100%;
  }
}

.galerieBox > div > div.thumb {
  border-bottom: 3px solid var(--gs-gelb);
  display: flex;
}

.galerieBox > div > div.thumb a {
  line-height: 0;
}

.galerieBox > div img {
  margin: 0;
  width: 100%;
  object-fit: cover;
  aspect-ratio: 3 / 2;
}

.galerieBox h2 {
  border-bottom: 1px solid var(--maincolor);
  margin: 1.5rem;
  padding: 0 0 1rem;
}

.galerieBox p {
  margin: 0 1.5rem 1.5rem;
}

.galerieBox .button {
  width: 100%;
  margin: 0;
}

/* ---------------------------------------- */
div.galerieImgBox {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); /* Automatisch passende Spalten */
  gap: 1rem; /* Abstand zwischen den Elementen */
}

div.galerieImgBox > div {
  display: flex;
  width: 100%;
  height: 0;
  padding-bottom: 100%; /* Macht das Element quadratisch */
  position: relative;
  border: 1px solid var(--gs-gelb);
  overflow: hidden;
}

div.galerieImgBox > div img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; /* Scharfe, zugeschnittene Bilder */
}

