.eko-hero-slider,
.eko-hero-slider * {
	box-sizing: border-box;
}

.eko-hero-slider {
	position: relative;
	width: 100%;
	min-height: 760px;
	overflow: hidden;
	background: #101715;
	isolation: isolate;
}

.eko-hero-slider__slides,
.eko-hero-slider__slide,
.eko-hero-slider__bg,
.eko-hero-slider__overlay,
.eko-hero-slider__container {
	position: absolute;
	inset: 0;
}

.eko-hero-slider__slides {
	z-index: 1;
}

.eko-hero-slider__slide {
	opacity: 0;
	visibility: hidden;
	z-index: 1;
	transition: opacity var(--eko-hero-speed, 700ms) ease, visibility var(--eko-hero-speed, 700ms) ease;
}

.eko-hero-slider__slide.is-active {
	opacity: 1;
	visibility: visible;
	z-index: 2;
}

.eko-hero-slider__bg {
	z-index: 1;
	background-image:
		linear-gradient(90deg, rgba(10, 18, 16, 0.95), rgba(10, 18, 16, 0.45), rgba(10, 18, 16, 0.15)),
		linear-gradient(145deg, #1a2a22 0%, #705327 52%, #211a12 100%);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	transform: scale(1.045);
	transition: transform 5800ms ease;
}

.eko-hero-slider__slide.is-active .eko-hero-slider__bg {
	transform: scale(1);
}

.eko-hero-slider__overlay {
	z-index: 2;
	background: rgba(0, 0, 0, 0.48);
	pointer-events: none;
}

.eko-hero-slider__container {
	z-index: 3;
}

.eko-hero-slider__container-inner {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	max-width: 1180px;
	height: 100%;
	margin-inline: auto;
	padding: 120px 24px 90px;
}

.eko-hero-slider__content {
	width: 100%;
	max-width: 760px;
	text-align: left;
}

.eko-hero-slider__label {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	max-width: 100%;
	margin: 0 0 26px;
	padding: 7px 14px;
	border: 1px solid rgba(255, 255, 255, 0.26);
	background: rgba(255, 255, 255, 0.08);
	color: #ffffff;
	font-family: inherit;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.eko-hero-slider__title {
	margin: 0 0 22px;
	padding: 0;
	color: #ffffff;
	font-family: Georgia, 'Times New Roman', serif;
	font-size: clamp(44px, 6vw, 86px);
	font-weight: 600;
	line-height: 0.96;
	letter-spacing: -0.05em;
}

.eko-hero-slider__title em {
	font-style: italic;
	font-weight: inherit;
}

.eko-hero-slider__description {
	max-width: 650px;
	margin: 0 0 30px;
	padding: 0;
	color: rgba(255, 255, 255, 0.88);
	font-family: inherit;
	font-size: 17px;
	font-weight: 500;
	line-height: 1.65;
}

.eko-hero-slider__button-group {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 16px;
}

.eko-hero-slider__button,
.eko-hero-slider__button:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 48px;
	padding: 16px 26px;
	border: 1px solid rgba(255, 255, 255, 0.35);
	border-radius: 0;
	box-shadow: none;
	font-family: inherit;
	font-size: 13px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.045em;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	transition: color 220ms ease, background-color 220ms ease, border-color 220ms ease, transform 220ms ease;
	cursor: pointer;
}

.eko-hero-slider__button:hover,
.eko-hero-slider__button:focus {
	text-decoration: none;
	transform: translateY(-1px);
}

.eko-hero-slider__button--primary,
.eko-hero-slider__button--primary:visited {
	border-color: #16542f;
	background: #16542f;
	color: #ffffff;
}

.eko-hero-slider__button--primary:hover,
.eko-hero-slider__button--primary:focus {
	border-color: #1c6a3a;
	background: #1c6a3a;
	color: #ffffff;
}

.eko-hero-slider__button--secondary,
.eko-hero-slider__button--secondary:visited {
	border-color: rgba(255, 255, 255, 0.45);
	background: rgba(255, 255, 255, 0.03);
	color: #ffffff;
}

.eko-hero-slider__button--secondary:hover,
.eko-hero-slider__button--secondary:focus {
	background: rgba(255, 255, 255, 0.13);
	color: #ffffff;
}

.eko-hero-slider__button-arrow {
	font-size: 1.12em;
	line-height: 1;
}

.eko-hero-slider__arrow {
	position: absolute;
	top: 50%;
	z-index: 12;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.08);
	color: #ffffff;
	font-size: 22px;
	line-height: 1;
	text-decoration: none;
	transform: translateY(-50%);
	transition: color 220ms ease, background-color 220ms ease, border-color 220ms ease, opacity 220ms ease;
	cursor: pointer;
}

.eko-hero-slider__arrow:hover,
.eko-hero-slider__arrow:focus {
	background: rgba(255, 255, 255, 0.18);
	color: #ffffff;
}

.eko-hero-slider__arrow--prev {
	left: 24px;
}

.eko-hero-slider__arrow--next {
	right: 24px;
}

.eko-hero-slider__dots {
	position: absolute;
	left: 50%;
	bottom: 34px;
	z-index: 12;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	transform: translateX(-50%);
}

.eko-hero-slider__dot {
	display: inline-block;
	width: 8px;
	height: 8px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.35);
	box-shadow: none;
	font-size: 0;
	line-height: 0;
	transition: width 220ms ease, background-color 220ms ease, opacity 220ms ease;
	cursor: pointer;
}

.eko-hero-slider__dot.is-active {
	width: 28px;
	background: #ffffff;
}

.eko-hero-slider__dot:hover,
.eko-hero-slider__dot:focus {
	opacity: 0.85;
}

@media (max-width: 1024px) {
	.eko-hero-slider {
		min-height: 640px;
	}

	.eko-hero-slider__container-inner {
		padding: 110px 48px 90px;
	}

	.eko-hero-slider__title {
		font-size: clamp(42px, 8vw, 72px);
	}
}

@media (max-width: 767px) {
	.eko-hero-slider {
		min-height: 560px;
	}

	.eko-hero-slider__container-inner {
		padding: 90px 20px 80px;
	}

	.eko-hero-slider__label {
		margin-bottom: 18px;
		font-size: 10px;
		letter-spacing: 0.12em;
	}

	.eko-hero-slider__title {
		font-size: clamp(36px, 12vw, 54px);
		line-height: 1.02;
	}

	.eko-hero-slider__description {
		font-size: 15px;
		line-height: 1.55;
	}

	.eko-hero-slider__button-group {
		align-items: stretch;
	}

	.eko-hero-slider__button {
		min-height: 46px;
		padding: 14px 18px;
		font-size: 12px;
	}

	.eko-hero-slider__arrow {
		width: 36px;
		height: 36px;
		font-size: 18px;
	}

	.eko-hero-slider__arrow--prev {
		left: 12px;
	}

	.eko-hero-slider__arrow--next {
		right: 12px;
	}
}
