:root {
	--swiper-navigation-color: #ffffff;
	--swiper-pagination-color: #ffffff;

	--easing: cubic-bezier(.2, 1, .2, 1);
	--transition: .8s var(--easing);
	--color-base: #fff;
	--color-gray: #ddd;
	--color-blue: #083388;
	--color-blue2: #515be2;
	--box-shadow: .15rem .15rem 0.2rem rgba(0, 0, 0, .3), -.15rem -.2rem 0.5rem rgba(255, 255, 255, 0.4);
	--box-shadow-hover: .5rem .5rem 0.5rem rgba(0, 0, 0, .2), -.5em -.5rem 0.5rem rgba(255, 255, 255, 0.3);
	--box-shadow-inset: inset .8rem .8rem 1.2rem rgba(0, 0, 0, .1), inset -.4rem -.4rem .5rem rgba(255, 255, 255, 0.4);
}

.event-slider {
	overflow: visible;
	padding-bottom: 50px;
}

.banner-slider {
	padding-bottom: 0;
}

[class^="swiper-button-"] {
	opacity: 0;
	visibility: hidden;
	transition: all .3s ease;
}

.swiper-button-prev,
.swiper-button-next {
	display: grid;
	place-content: center;
	width: 4rem;
	height: 4rem;
	cursor: pointer;
	transform-origin: center;
}

.event-slider .swiper-button-prev,
.event-slider .swiper-button-next {
	margin-top: -50px;
}

.banner-slider .swiper-button-prev,
.banner-slider .swiper-button-next {
	margin-top: -45px;
}

.swiper-button-prev {
	left: 15px !important;
	right: auto;
}

.swiper-button-next {
	right: 15px !important;
	left: auto;
}

.swiper-button-prev {
	-webkit-transform: translateX(50px);
	transform: translateX(50px);
}

.swiper-button-next {
	-webkit-transform: translateX(-50px);
	transform: translateX(-50px);
}

.swiper:hover .swiper-button-prev,
.swiper:hover .swiper-button-next {
	-webkit-transform: translateX(0);
	transform: translateX(0);
	opacity: 1;
	visibility: visible;
}

.swiper-button-prev::after,
.swiper-button-next::after {
	width: 0.9rem;
	height: 0.9rem;
	content: "";
	border: solid var(--color-base);
	border-width: 3px 3px 0 0;
}

.swiper-button-prev::after {
	margin-left: 0.5rem;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}

.swiper-button-next::after {
	margin-right: 0.5rem;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.swiper-button-prev::before,
.swiper-button-next::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: "";
	border-radius: 50%;
	background: var(--color-blue);
	box-shadow: var(--box-shadow);
	transition: all .3s ease;
}

.swiper-button-prev:hover::before,
.swiper-button-next:hover::before {
	transform: scale(1.15);
	background: var(--color-blue2);
	box-shadow: var(--box-shadow);
}

.swiper-pagination {
	display: flex;
	flex-wrap: wrap;
	gap: 1.2rem 0.5rem;
	justify-content: center;
	text-align: center;
}

.event-slider .swiper-pagination {
	z-index: 3;
}

.swiper-pagination-bullet {
	width: 1.6rem;
	height: 6px;
	border-radius: 3px;
	cursor: pointer;
	transition: var(--transition);
	vertical-align: top;
	background-color: #666;
	opacity: .4;
}

.swiper-pagination-bullet-active {
	width: 4rem;
	background-color: var(--color-blue);
	opacity: 1;
}

/*top*/
.banner-slider .swiper-pagination {
	left: 5%;
	right: auto;
	top: auto;
	bottom: 8%;
	display: flex;
	gap: 10px;
	width: auto !important;
	z-index: 10;
}

.banner-slider .swiper-pagination-bullet {
	position: relative;
	width: 35px;
	height: 35px;
	margin: 0 !important;
	background: transparent;
	border-radius: 50%;
	opacity: 1;
	cursor: pointer;
}

.banner-slider .swiper-pagination-bullet::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #fff;
	transform: translate(-50%, -50%);
	opacity: .3;
}

.banner-slider .swiper-pagination-bullet-active::after {
	opacity: 1;
}

/* progress ring */
.banner-slider .progress-ring {
	position: absolute;
	top: 50%;
	left: 50%;
	transform:
		translate(-50%, -50%) rotate(-90deg);
	overflow: visible;
	pointer-events: none;
	will-change: transform;
}

.banner-slider .progress-ring__circle {
	stroke-dasharray: 113.1;
	stroke-dashoffset: 113.1;
	opacity: 0;
	transition:
		stroke-dashoffset .1s linear,
		opacity .3s;
	stroke-linecap: round;
}

.banner-slider .swiper-pagination-bullet-active .progress-ring__circle {
	opacity: 1;
}

.slideNone .swiper-button-next,
.slideNone .swiper-button-prev,
.slideNone .swiper-pagination {
	display: none;
}

@media (max-width:1024px) {

	.works-slider .swiper-button-prev,
	.works-slider .swiper-button-next,
	.event-slider .swiper-button-prev,
	.event-slider .swiper-button-next,
	.banner-slider .swiper-button-prev,
	.banner-slider .swiper-button-next {
		display: none;
	}

	.banner-slider .swiper-pagination {
		bottom: 3.5%;
		gap: 8px;
	}
}

@media (max-width:768px) {
	.swiper-pagination-bullet {
		width: 1.4rem;
		margin: 0 2px !important;
	}

	.swiper-pagination-bullet-active {
		width: 3rem;
	}
}

@media (max-width:640px) {
	.swiper-pagination-bullet {
		width: 1.2rem;
	}

	.swiper-pagination-bullet-active {
		width: 2.5rem;
	}

	.banner-slider .swiper-pagination {
		gap: 5px;
		transform: scale(0.85);
		transform-origin: left bottom;
	}
}

@media (max-width:480px) {
	.event-slider {
		padding-bottom: 40px;
	}

	.swiper-pagination-bullet {
		width: 1rem;
		margin: 0 !important;
	}

	.swiper-pagination-bullet-active {
		width: 2rem;
	}

	.banner-slider .swiper-pagination {
		gap: 1px;
		transform: scale(0.75);
	}
}