.elementor-slides-wrapper {
	position: relative;
	overflow: hidden;
}

.elementor-slides .swiper-slide {
	position: relative;
	display: flex;
	overflow: hidden;
	height: 400px;
}

.swiper-slide-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
	z-index: 0;
}

.elementor-background-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.swiper-slide-inner {
	position: relative;
	z-index: 2;
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	padding: 50px;
}

.swiper-slide-contents {
	position: relative;
	width: 100%;
}

.elementor-slide-heading {
	margin: 0 0 15px;
	font-weight: 600;
	font-size: 2.5rem;
}

.elementor-slide-divider {
	border-top: 2px solid #fff;
	width: 20%;
	margin: 0 0 15px;
}

.elementor-slide-description {
	margin: 0 0 25px;
	font-size: 1.2rem;
}

.elementor-slide-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
}

.elementor-slide-button {
	display: inline-flex;
	text-decoration: none;
	text-align: center;
	transition: all .3s;
	border: solid transparent;
	border-width: 0;
}

.elementor-button-content-wrapper {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}

.elementor-button-icon {
	margin-left: 10px;
	display: inline-flex;
	align-items: center;
}

.elementor-button-icon svg {
	width: 1em;
	height: 1em;
	fill: currentColor;
	transition: transform 0.3s ease;
}

.elementor-slide-button.style-outline {
	background-color: transparent;
	border: 1px solid #fff;
	color: #fff;
}

.elementor-slide-link {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 3;
}

/* Button Icon Hover Animations */
.elementor-button-icon-animation-slide-right .elementor-slide-button:hover .elementor-button-icon svg {
	transform: translateX(5px);
}
.elementor-button-icon-animation-slide-left .elementor-slide-button:hover .elementor-button-icon svg {
	transform: translateX(-5px);
}
.elementor-button-icon-animation-pop .elementor-slide-button:hover .elementor-button-icon svg {
	transform: scale(1.2);
}

.elementor-swiper-button {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 25px;
}

.elementor-swiper-button svg {
	height: 1em;
	width: 1em;
	fill: currentColor;
}

.elementor-swiper-button-prev {
	left: 20px;
}

.elementor-swiper-button-next {
	right: 20px;
}

.swiper-pagination {
	position: absolute;
	bottom: 20px;
	left: 0;
	width: 100%;
	text-align: center;
	z-index: 10;
}

.swiper-pagination-bullet {
	width: 8px;
	height: 8px;
	display: inline-block;
	border-radius: 50%;
	background: #000;
	opacity: .2;
	margin: 0 5px;
	cursor: pointer;
}

.swiper-pagination-bullet-active {
	opacity: 1;
	background: #fff;
}

/* Text alignment for divider */
.elementor-slide-inner[style*="text-align: center"] .elementor-slide-divider { margin-left: auto; margin-right: auto; }
.elementor-slide-inner[style*="text-align: right"] .elementor-slide-divider { margin-left: auto; margin-right: 0; }

/* Animations */
.elementor-slides-wrapper[data-animation="fadeInUp"] .swiper-slide-active .swiper-slide-contents > * {
	animation: fadeInUp 1s both;
}
.elementor-slides-wrapper[data-animation="fadeInDown"] .swiper-slide-active .swiper-slide-contents > * {
	animation: fadeInDown 1s both;
}
.elementor-slides-wrapper[data-animation="fadeInLeft"] .swiper-slide-active .swiper-slide-contents > * {
	animation: fadeInLeft 1s both;
}
.elementor-slides-wrapper[data-animation="fadeInRight"] .swiper-slide-active .swiper-slide-contents > * {
	animation: fadeInRight 1s both;
}
.elementor-slides-wrapper[data-animation="zoomIn"] .swiper-slide-active .swiper-slide-contents > * {
	animation: zoomIn 1s both;
}

@keyframes fadeInUp {
	from { opacity: 0; transform: translate3d(0, 40px, 0); }
	to { opacity: 1; transform: none; }
}
@keyframes fadeInDown {
	from { opacity: 0; transform: translate3d(0, -40px, 0); }
	to { opacity: 1; transform: none; }
}
@keyframes fadeInLeft {
	from { opacity: 0; transform: translate3d(-40px, 0, 0); }
	to { opacity: 1; transform: none; }
}
@keyframes fadeInRight {
	from { opacity: 0; transform: translate3d(40px, 0, 0); }
	to { opacity: 1; transform: none; }
}
@keyframes zoomIn {
	from { opacity: 0; transform: scale3d(0.3, 0.3, 0.3); }
	50% { opacity: 1; }
}

/* Ken Burns */
.elementor-ken-burns .swiper-slide-bg {
	transition-property: transform;
	transition-timing-function: linear;
}
.elementor-ken-burns--in .swiper-slide-active .swiper-slide-bg {
	transform: scale(1.2);
}
.elementor-ken-burns--out .swiper-slide-active .swiper-slide-bg {
	transform: scale(1);
}
.elementor-ken-burns--out .swiper-slide-bg {
	transform: scale(1.2);
}

/* Arrow Positions */
.elementor-arrows-position-outside .elementor-slides-wrapper { overflow: visible; }
.elementor-arrows-position-outside .elementor-swiper-button-prev { left: -40px; }
.elementor-arrows-position-outside .elementor-swiper-button-next { right: -40px; }

/* Pagination Positions */
.elementor-pagination-position-outside .swiper-pagination { bottom: -30px; }
