/**
 * swiper-custom.css
 * Custom Styles für Swiper-Komponenten (Hero-Slideshow, Galerie)
 */

/* ========================================
   Hero-Slideshow (.swsHeroSwiper)
   ======================================== */

.swsHeroSwiper{
	width:100%;
	position:relative;
}

/* Slides nehmen volle Breite ein */
.swsHeroSwiper .swiper-slide{
	width:100%;
	overflow:hidden;
}

.swsHeroSwiper .swiper-slide > img{
	display:block;
	width:100%;
	height:auto;
}

/* Pagination-Dots als Overlay (unten zentriert) */
.swsHeroSwiper .swiper-pagination{
	position:absolute;
	bottom:0.5rem;
	left:0;
	right:0;
	display:flex;
	justify-content:center;
	gap:0.5rem;
	z-index:10;
}

.swsHeroSwiper .swiper-pagination-bullet{
	width:0.75rem;
	height:0.75rem;
	background-color:rgba(255, 255, 255, 0.5);
	border-radius:50%;
	cursor:pointer;
	transition:background-color 0.2s ease, transform 0.2s ease;
	opacity:1;
}

.swsHeroSwiper .swiper-pagination-bullet:hover{
	background-color:rgba(255, 255, 255, 0.8);
}

.swsHeroSwiper .swiper-pagination-bullet-active{
	border:2px solid var(--color-white);
	background-color:var(--color-blue);
	transform:scale(1.2);
}

/* ========================================
   Galerie-Slider (.swsGallerySwiper)
   ======================================== */

.swsGallerySwiper{
	width:var(--main-width);
	overflow:visible;
}

/* Slides: Feste Breite basierend auf Bildinhalt, nicht schrumpfen */
.swsGallerySwiper .swiper-slide{
	width:auto;
	height:auto;
}

/* Grid-Modus: Bilder in 2 Rows */
.swsGallerySwiper .grid2{
	display:flex;
	flex-direction:column;
	gap:var(--gap-contentNarrow);
}

/* Scrollbar */
.swsGallerySwiper .swiper-scrollbar{
	position:static;
	margin-top:var(--swsSwiper-scrollbar-bottom);
}

.swsGallerySwiper .swiper-scrollbar-drag{
	cursor:grab;
}

.swsGallerySwiper .swiper-scrollbar-drag:active{
	cursor:grabbing;
}

/* ========================================
   Team-Slider (.swsTeamSwiper)
   ======================================== */

.swsTeamSwiper{
	width:var(--main-width);
	overflow:visible;
}

.swsTeamSwiper .swiper-slide{
	width:auto;
	height:auto;
}

.swsTeamSwiper .swiper-scrollbar{
	position:static;
	margin-top:var(--swsSwiper-scrollbar-bottom);
}

.swsTeamSwiper .swiper-scrollbar-drag{
	cursor:grab;
}

.swsTeamSwiper .swiper-scrollbar-drag:active{
	cursor:grabbing;
}

/* ========================================
   -Slider (.swsSwiper)
   ======================================== */

.swsSwiper{
	width:var(--main-width);
	overflow:visible;
}

.swsSwiper .swiper-slide{
	width:auto;
	height:auto;
}

.swsSwiper .swiper-scrollbar{
	position:static;
	margin-top:var(--swsSwiper-scrollbar-bottom);
}

.swsSwiper .swiper-scrollbar-drag{
	cursor:grab;
}

.swsSwiper .swiper-scrollbar-drag:active{
	cursor:grabbing;
}

/* ========================================
   Highlights-Slider (.immo-highlights-swiper)
   ======================================== */

.immo-highlights-swiper{
	width:var(--main-width);
	overflow:visible;
}

.immo-highlights-swiper > .swiper-wrapper > .swiper-slide{
	width:auto;
	height:auto;
}

.immo-highlights-swiper .swiper-scrollbar{
	/* position:static; */
	/* margin-top:var(--swsSwiper-scrollbar-bottom); */
	/* width:calc(var(--main-width) - var(--swiper-scrollbar-sides-offset, 1%)*2); */
	width:var(--main-width);
}

.immo-highlights-swiper .swiper-scrollbar-drag{
	cursor:grab;
}

.immo-highlights-swiper .swiper-scrollbar-drag:active{
	cursor:grabbing;
}