/*
 * Copyright (c) 2025 TechDivision GmbH
 * All rights reserved
 *
 * This product includes proprietary software developed at TechDivision GmbH, Germany
 * For more information see https://www.techdivision.com/
 *
 * To obtain a valid license for using this software please contact us at
 * license@techdivision.com
 */
:root {
  --swiper-theme-color: var(--color-gray-darker) !important;
  --swiper-navigation-size: 20px !important;
}

/* slider block */
.gallery {
  position: relative;
  min-height: 60px;
}

.gallery .swiper {
  margin: 0 50px;
  overflow: hidden;
}

.gallery .swiper .swiper-wrapper {
  display: flex;
}

.gallery .swiper .swiper-slide {
  flex-shrink: 0;
  align-self: center;
}

.gallery .swiper .swiper-slide > div {
  margin: 0 auto;
  display: flex;
  align-items: center;
  min-height: 60px;
  justify-content: center;
  padding: 0 10px;
}

.gallery .swiper .swiper-slide p {
  width: 100%;
}

.gallery .lazy-loading {
  /* reserve an approximate space to avoid extensive layout shifts */
  aspect-ratio: 16 / 9;
}

.gallery .thumbs {
  position: relative;
  box-sizing: border-box;
  padding: 0 var(--spacing-double);
  overflow: hidden;
}

.gallery .thumbs .swiper-wrapper {
  min-height: 200px;
}

.gallery .thumbs .swiper-slide {
  align-self: center;
  visibility: hidden;
  opacity: 0.4;
}

.gallery .thumbs .swiper-slide.swiper-slide-visible {
  visibility: visible;
}

.gallery .thumbs .swiper-slide.swiper-slide-thumb-active {
  opacity: 1;
}

.gallery .video-placeholder {
  width: 100%;
  aspect-ratio: 16 / 9;
  position: relative;
}

.gallery .video-placeholder > * {
  display: flex;
  align-items: center;
  justify-content: center;
  inset: 0;
}

.gallery .video-placeholder picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gallery .video-placeholder-play {
  position: absolute;
}

.gallery .video-placeholder-play button {
  box-sizing: border-box;
  position: relative;
  display: block;
  transform: scale(3);
  width: 22px;
  height: 22px;
  border: 2px solid;
  border-radius: var(--card-border-radius);
  padding: 0;
}

.gallery .video-placeholder-play button::before {
  content: '';
  display: block;
  box-sizing: border-box;
  position: absolute;
  width: 0;
  height: 10px;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 6px solid;
  top: 4px;
  left: 7px;
}

.tiktok-embed {
  width: 100%;
  border-left: 5px solid var(--light-color);
}

.tiktok-embed iframe {
  height: fit-content;
}

