/* 推荐 */
.recommend-container {
	position: relative;
	max-width: 1400px;
	margin: 0 auto;
	box-sizing: content-box;
}

.recommend-container .recommend-title {
	color: #222222;
	font-weight: bold;
	margin: 0;
}

.recommend-container .recommend-label {
	color: #999999;
	margin: 0;
}

.swiper-content {
	display: none;
}

.swiper-content.active {
	display: block;
}

.swiper-content .text-item .section .link {
	position: relative;
}

.swiper-content .text-item .section .link::before {
	position: absolute;
	top: 50%;
	left: 10px;
	transform: translateY(-50%);
	display: block;
	content: '了解更多';
	font-size: 14px;
	color: white;
}

@media screen and (max-width: 1023px) {
	.recommend-container {
		padding: 0 10px;
		margin-top: 30px;
		margin-bottom: 20px;
	}

	.recommend-container .recommend-title {
		font-size: 20px;
	}

	.recommend-container .recommend-label {
		font-size: 16px;
		margin-top: 14px;
	}

	.swiper-content {
		position: relative;
	}

	/* banner */
	.swiper-content .banner-content {
		position: relative;
		padding-bottom: 66%;
		margin-top: 20px;
	}

	.swiper-content .banner-content .carousel {
		position: absolute;
		top: 0;
		left: 0;
	}

	.swiper-content .banner-content .carousel,
	.swiper-content .banner-content .carousel .carousel-inner,
	.swiper-content .banner-content .carousel .carousel-inner .carousel-item,
	.swiper-content .banner-content .carousel .carousel-inner .carousel-item img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center;
	}

	.swiper-content .banner-content .carousel-control-next-icon,
	.swiper-content .banner-content .carousel-control-prev-icon {
		width: 40px;
		height: 40px;
	}

	.swiper-content .carousel-indicators {
		height: calc(300px + 100%);
		justify-content: flex-start;
		margin: 0;
		left: 10px;
		bottom: auto;
		align-items: flex-end;
		pointer-events: none;
	}

	.swiper-content .carousel-indicators li {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 2rem;
		height: 1.5rem;
		border-radius: 16px;
		border: 1px solid transparent;
		margin-right: 10px;
		cursor: pointer;
		pointer-events: auto;
	}

	.swiper-content .carousel-indicators li.active {
		border-color: #2CB053;
	}

	.swiper-content .carousel-indicators li::after {
		display: block;
		content: '';
		width: 8px;
		height: 8px;
		border-radius: 4px;
		background: #C6C6C7;
	}

	.swiper-content .carousel-indicators li.active::after {
		background: #2CB053;
	}

	/* text */
	.swiper-content .text-content {
		position: relative;
		min-height: 320px;
		box-sizing: border-box;
		background-color: white;
	}

	.swiper-content .text-item {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		padding: 20px 14px 0;
		opacity: 0;
		transition: opacity 0.5s;
	}

	.swiper-content .text-item.active {
		opacity: 1;
		z-index: 1;
	}

	.swiper-content .text-item .calendar {
		display: flex;
		align-items: flex-end;
	}

	.swiper-content .text-item .calendar .month {
		font-size: 24px;
		font-weight: bold;
		color: #00902C;
		line-height: 1;
		margin: 0;
	}

	.swiper-content .text-item .calendar .day {
		font-size: 16px;
		color: #999999;
		line-height: 1;
		margin: 0 0 0 2px;
	}

	.swiper-content .text-item .calendar .day::before {
		content: '/';
	}

	.swiper-content .text-item .section .title {
		font-weight: bold;
		font-size: 20px;
		color: #222222;
		margin: 20px 0 0;
	}

	.swiper-content .text-item .section .label {
		max-width: 560px;
		font-weight: 500;
		font-size: 16px;
		color: #222222;
		line-height: 2;
		margin-top: 14px;
		-webkit-line-clamp: 3;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.swiper-content .text-item .section .link {
		display: block;
		margin-top: 20px;
	}

	.swiper-content .text-item .section .link::before {
		left: 6px;
		font-size: 11px;
	}

	.swiper-content .text-item .section .link .img {
		width: 80px;
	}
}

@media screen and (min-width: 1024px) {
	.recommend-container {
		padding: 0 20px;
		margin-top: 3.75rem;
		margin-bottom: 6.25rem;
	}

	.recommend-container .recommend-title {
		font-size: 2.5rem;
	}

	.recommend-container .recommend-label {
		font-size: 1.5rem;
		margin-top: 1rem;
	}

	.swiper-content {
		position: relative;
		height: min(608px, 42vw);
		margin-top: 3.75rem;
	}

	/* banner */
	.swiper-content .banner-content {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 2;
		width: 58%;
	}

	.swiper-content .banner-content .carousel,
	.swiper-content .banner-content .carousel .carousel-inner,
	.swiper-content .banner-content .carousel .carousel-inner .carousel-item,
	.swiper-content .banner-content .carousel .carousel-inner .carousel-item img {
		width: 100%;
	}

	.swiper-content .banner-content .carousel-control-next-icon,
	.swiper-content .banner-content .carousel-control-prev-icon {
		width: 40px;
		height: 40px;
	}

	.swiper-content .carousel-indicators {
		left: 50%;
		bottom: -3.5rem;
		justify-content: flex-start;
		margin: 0;
	}

	.swiper-content .carousel-indicators li {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 2rem;
		height: 1.5rem;
		border-radius: 16px;
		border: 1px solid transparent;
		background-color: transparent;
		margin-right: 10px;
		cursor: pointer;
	}

	.swiper-content .carousel-indicators li.active {
		border-color: #2CB053;
	}

	.swiper-content .carousel-indicators li::after {
		display: block;
		content: '';
		width: 8px;
		height: 8px;
		border-radius: 4px;
		background: #C6C6C7;
	}

	.swiper-content .carousel-indicators li.active::after {
		background: #2CB053;
	}

	/* text */
	.swiper-content .text-content {
		position: relative;
		width: 54%;
		height: 100%;
		margin-right: 0;
		margin-left: auto;
		background-color: white;
		border-radius: 10px;
	}

	.swiper-content .text-item {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		padding: min(88px, 10%) 10% 0 30%;
		opacity: 0;
		transition: opacity 0.5s;
	}

	.swiper-content .text-item.active {
		opacity: 1;
		z-index: 1;
	}

	.swiper-content .text-item .calendar {
		display: flex;
		align-items: flex-end;
	}

	.swiper-content .text-item .calendar .month {
		font-size: 2.625rem;
		color: #00902C;
		line-height: 1;
		margin: 0;
	}

	.swiper-content .text-item .calendar .day {
		font-size: 1rem;
		color: #999999;
		line-height: 1;
		margin: 0 0 4px 2px;
	}

	.swiper-content .text-item .calendar .day::before {
		content: '/';
	}

	.swiper-content .text-item .section .title {
		font-weight: bold;
		font-size: 1.75rem;
		color: #222222;
		margin: 2.75rem 0 0;
	}

	.swiper-content .text-item .section .label {
		max-width: 480px;
		font-weight: 500;
		font-size: 1rem;
		color: #222222;
		line-height: 2;
		margin-top: 1.45rem;
		-webkit-line-clamp: 3;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.swiper-content .text-item .section .link {
		display: block;
		margin-top: 5.25rem;
	}
}