.palvelinx-hero-slider {
	position: relative;
	width: 100%;
	height: min(1000px, 100vh);
	min-height: 680px;
	overflow: hidden;
	background: #111827;
}

.palvelinx-hero-slider .carousel,
.palvelinx-hero-slider .carousel-inner,
.palvelinx-hero-slider .carousel-item {
	height: 100%;
}

.palvelinx-hero-slide-bg {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	background-image: linear-gradient(120deg, #0f172a, #1f2937);
	overflow: hidden;
}

.palvelinx-hero-slide-bg::before {
	content: "";
	position: absolute;
	inset: -2px;
	background: inherit;
	filter: blur(2px) brightness(0.9);
	transform: scale(1.01);
	pointer-events: none;
}

.palvelinx-hero-slide-bg::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0.28) 45%, rgba(0, 0, 0, 0.14) 100%);
	pointer-events: none;
}

.palvelinx-hero-slide-content {
	position: relative;
	z-index: 2;
	max-width: 760px;
	color: #ffffff;
}

.palvelinx-hero-title {
	font-family: "Poppins", sans-serif;
	font-size: clamp(2rem, 4vw, 3.4rem);
	font-weight: 700;
	line-height: 1.1;
	margin-bottom: 1rem;
}

.palvelinx-hero-text {
	font-size: clamp(1rem, 1.3vw, 1.25rem);
	line-height: 1.6;
	max-width: 680px;
	color: #e5e7eb;
}

.palvelinx-hero-buttons .btn {
	font-size: 14px;
	padding: 14px 24px;
	border-radius: 8px;
	text-transform: uppercase;
	white-space: nowrap;
	min-width: 104px;
	font-weight: 600;
	letter-spacing: 0.5px;
	position: relative;
	overflow: hidden;
	box-shadow: none;
	text-shadow: none;
	height: auto;
	line-height: 1.2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: all 200ms ease;
}

.palvelinx-hero-buttons .btn::before {
	content: "";
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	transition: left 200ms;
	pointer-events: none;
}

.palvelinx-hero-buttons .btn:hover::before,
.palvelinx-hero-buttons .btn:focus::before {
	left: 100%;
}

.palvelinx-hero-buttons .btn:active {
	transform: translateY(0);
}

.palvelinx-hero-buttons .btn-primary {
	color: #fff;
	background: linear-gradient(135deg, rgba(149, 21, 149, 0.3) 0%, rgba(149, 21, 149, 0.1) 100%);
	border: 1px solid rgba(229, 31, 229, 0.3);
}

.palvelinx-hero-buttons .btn-primary::before {
	background: linear-gradient(90deg, transparent, rgba(229, 31, 229, 0.3), transparent);
}

.palvelinx-hero-buttons .btn-primary:hover,
.palvelinx-hero-buttons .btn-primary:focus {
	color: #fff;
	background: linear-gradient(135deg, rgba(229, 31, 229, 0.4) 0%, rgba(229, 31, 229, 0.2) 100%);
	border-color: rgba(229, 31, 229, 0.6);
	box-shadow: 0 0 15px rgba(229, 31, 229, 0.2);
	transform: translateY(-2px);
}

.palvelinx-hero-buttons .btn-outline-light {
	color: #fff;
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.22) 0%, rgba(255, 255, 255, 0.08) 100%);
	border: 1px solid rgba(255, 255, 255, 0.45);
}

.palvelinx-hero-buttons .btn-outline-light::before {
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.35), transparent);
}

.palvelinx-hero-buttons .btn-outline-light:hover,
.palvelinx-hero-buttons .btn-outline-light:focus {
	color: #fff;
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.32) 0%, rgba(255, 255, 255, 0.14) 100%);
	border-color: rgba(255, 255, 255, 0.75);
	box-shadow: 0 0 15px rgba(255, 255, 255, 0.2);
	transform: translateY(-2px);
}

.palvelinx-hero-slider .carousel-control-prev,
.palvelinx-hero-slider .carousel-control-next {
	width: 8%;
}

.palvelinx-hero-slider .carousel-indicators {
	margin-bottom: 1.2rem;
}

@media (max-width: 767.98px) {
	.palvelinx-hero-slider {
		height: 78vh;
		min-height: 520px;
	}

	.palvelinx-hero-slide-content {
		max-width: 100%;
	}
}

@media (min-width: 992px) {
	.palvelinx-hero-slider .container {
		max-width: 1160px;
	}
}

@media (min-width: 1200px) {
	.palvelinx-hero-slider .container {
		max-width: 1360px;
	}
}

@media (min-width: 1400px) {
	.palvelinx-hero-slider .container {
		max-width: 1560px;
	}
}
