/* ---------- Filter ---------- */
.media-gallery__filter {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin: 0;
  padding: 50px;
  box-sizing: border-box;
  position: relative;
  z-index: 5;
  display: none !important;
}

.media-gallery__filter:before {
  content: "";
  width: 100vw;
  height: 100%;
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: calc(50% - 50vw);
  z-index: 0;
  background: var(--green);
}

.media-gallery__filter-btn {
  appearance: none;
  border: 1px solid transparent;
  background: transparent;
  color: var(--darkblue);
  padding: 10px 100px;
  border-radius: 999px;
  cursor: pointer;
  font: inherit;
  line-height: 1;
  position: relative;
  z-index: 1;
}

.media-gallery__filter-btn[aria-pressed="true"] {
  background: transparent;
  border-color: var(--darkblue);
}

/* Wrapper ausblenden (wichtig: Wrapper, nicht nur item) */
.media-gallery__grid > div > div.is-hidden {
  display: none !important;
}

/* ---------- Gallery / Grid ---------- */
.media-gallery {
  background: var(--darkblue);
}

/*
Dein echtes Grid ist:
.media-gallery__grid > div
(das Element, das viele <div> Kinder mit Items enthält)
*/
.media-gallery__grid > div {
  --gap: 10px;
  --row: 10px;

  display: grid;
  /* grid-template-columns: repeat(2, minmax(0, 1fr)); */
  grid-template-columns: 45% 55%;
  gap: var(--gap);
  grid-auto-rows: var(--row);
}

/* Jedes Item-Wrapper-DIV ist ein Grid-Item */
.media-gallery__grid > div > div {
  display: block;
}

/* Inhalt normal breit */
.media-gallery__item {
  width: 100%;
  position: relative;
}

.media-gallery__grid figure {
  margin: 0;
}

/* ✅ ABSICHERUNG: Bilder dürfen nicht “0 Höhe” haben */
.media-gallery__item img {
  display: block;
  width: 100%;
  height: auto;
}

.media-gallery__item iframe {
  border-radius: 0;
}

/* ---------- Image Copyright ---------- */
.media-gallery__copyright {
  border-radius: 100px;
  background: white;
  padding: 5px 15px;
  position: absolute;
  left: 20px;
  bottom: 20px;
  z-index: 10;
  font-size: 14px;
  color: black;
}

/* ---------- Video ---------- */
.media-gallery__item--video {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 0;
}

.media-gallery__iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/* Overlay */
.media-gallery__video-overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  border: 0;
  background: transparent;
  cursor: pointer;
}

/* Play Button */
.media-gallery__play {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 74px;
  height: 74px;
  transform: translate(-50%, -50%);
  border-radius: 999px;
  background: rgba(0, 0, 0, .55);
  box-shadow: 0 10px 30px rgba(0, 0, 0, .35);
}

.media-gallery__play::before {
  content: "";
  position: absolute;
  left: 52%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 0;
  height: 0;
  border-left: 18px solid #fff;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
}
