/* Segmentierte Bilder/Videos-Umschaltung oben auf der Galerie-Seite */
.gallery-tabs {
  display: flex;
  gap: 0.6rem;
  max-width: var(--container-width);
  margin: 0 auto;
  margin-bottom: 20px;
  padding: var(--space-3) var(--space-3) 0;
}
.gallery-tabs__btn {
  padding: 0.5rem 1.1rem;
  border-radius: 999px;
  border: 1px solid var(--color-border);
  font-family: var(--font-display);
  font-size: 0.85rem;
  color: var(--color-text-muted);
  transition: border-color var(--transition-fast), color var(--transition-fast), background var(--transition-fast);
}
.gallery-tabs__btn:hover,
.gallery-tabs__btn.is-active {
  background: var(--color-accent);
  border-color: var(--color-accent);
  color: var(--color-accent-text);
}

/* Videobereich unterhalb der Bilder-Galerie – bewusst im selben dichten
   Kachelraster wie .gallery__grid gehalten, damit Bilder und Videos
   gleichwertig wirken statt wie zwei unterschiedlich große Blöcke. */
.gallery-videos {
  padding: var(--space-6) 0 var(--space-4);
  background: var(--color-bg-alt);
}
.gallery-videos__inner {
  max-width: var(--container-width);
  margin: 0 auto;
  padding: 0 var(--space-3);
}
.gallery-videos__inner h2 {
  font-size: var(--fs-h2);
  max-width: 26ch;
}
.gallery-videos__intro {
  max-width: 60ch;
  margin-bottom: var(--space-4);
}
.gallery-videos__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-2);
}
.gallery-videos__item {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: var(--radius-m);
  background: #000;
  padding: 0;
}
.gallery-videos__item video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  pointer-events: none;
  transition: transform var(--transition-medium);
}
.gallery-videos__item:hover video {
  transform: scale(1.06);
}
.gallery-videos__play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: rgba(16, 29, 61, 0.72);
  color: #fff;
  transition: background var(--transition-fast), transform var(--transition-fast);
}
.gallery-videos__play .icon {
  width: 20px;
  height: 20px;
  margin-left: 3px;
}
.gallery-videos__item:hover .gallery-videos__play {
  background: var(--color-accent);
  transform: translate(-50%, -50%) scale(1.08);
}

@media (min-width: 640px) {
  .gallery-videos__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 1000px) {
  .gallery-videos__grid {
    grid-template-columns: repeat(5, 1fr);
  }
}
