.home_show,
.home_show * {
	box-sizing: border-box;
}

.home_show {
	padding: 48px 0 56px !important;
	background: #f7f8f4 !important;
	color: #31445a;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang TC", "Microsoft JhengHei", sans-serif;
}

.home_show > .wrap {
	position: relative;
	width: min(1180px, calc(100% - 32px)) !important;
	height: auto !important;
	margin: 0 auto !important;
}

.home_show .home_show_top {
	position: relative;
	display: block;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 26px 112px 25px 30px !important;
	border-radius: 24px 24px 0 0;
	background: #abbf4a;
	color: #fff !important;
	font-size: 32px !important;
	font-weight: 850;
	letter-spacing: -.025em;
	line-height: 1.15 !important;
}

.home_show .two-cr-programme-carousel-nav {
	position: absolute;
	top: 50%;
	right: 22px;
	display: flex;
	align-items: center;
	gap: 8px;
	transform: translateY(-50%);
}

.home_show .two-cr-programme-carousel-button {
	position: static !important;
	top: auto !important;
	right: auto !important;
	bottom: auto !important;
	left: auto !important;
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	margin: 0;
	padding: 0 0 3px;
	border: 1px solid rgba(52, 66, 15, .18);
	border-radius: 50%;
	background: rgba(255, 255, 255, .9);
	box-shadow: 0 5px 16px rgba(52, 66, 15, .15), inset 0 1px 0 rgba(255, 255, 255, .9);
	color: #536515;
	cursor: pointer;
	font: 500 30px/1 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}

.home_show .two-cr-programme-carousel-button::before,
.home_show .two-cr-programme-carousel-button::after {
	display: none !important;
	content: none !important;
}

.home_show .two-cr-programme-carousel-button:hover,
.home_show .two-cr-programme-carousel-button:focus-visible {
	background: #fff;
	box-shadow: 0 7px 20px rgba(52, 66, 15, .22), inset 0 1px 0 #fff;
	outline: 2px solid rgba(255, 255, 255, .78);
	outline-offset: 2px;
	transform: translateY(-1px);
}

.home_show .two-cr-programme-carousel-button:active {
	transform: translateY(1px);
}

.home_show .two-cr-programme-carousel-status {
	min-width: 46px;
	padding: 6px 9px;
	border: 1px solid rgba(52, 66, 15, .14);
	border-radius: 999px;
	background: rgba(255, 255, 255, .7);
	color: #34420f;
	font-size: 12px;
	font-weight: 800;
	line-height: 1;
	text-align: center;
}

.home_show .two-cr-programme-carousel-progress {
	position: absolute;
	right: 0;
	bottom: 17px;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	pointer-events: none;
}

.home_show .two-cr-programme-carousel-dot {
	display: block;
	width: 7px;
	height: 7px;
	border-radius: 999px;
	background: #d5dcc0;
	transition: width .18s ease, background .18s ease;
}

.home_show .two-cr-programme-carousel-dot.is-active {
	width: 24px;
	background: #91a33b;
}

.home_show .home_show_top::before {
	display: block;
	margin-bottom: 7px;
	color: #34420f;
	content: "PROGRAMMES · 2CR";
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .18em;
	line-height: 1.2;
}

.home_show .home_show_top img,
.home_show .home_show_top noscript {
	display: none !important;
}

.home_show .home_show_btm {
	position: relative;
	overflow: hidden;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 0 44px;
	border: 1px solid #dce4eb;
	border-top: 0;
	border-radius: 0 0 24px 24px;
	background: #fff;
	box-shadow: 0 18px 50px rgba(52, 66, 15, .11);
}

.home_show .swiper-container {
	overflow: hidden;
}

.home_show .active_swiper > .swiper-wrapper {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	transform: none !important;
}

.home_show .active_swiper > .swiper-wrapper > .swiper-slide {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	transform: none !important;
}

.home_show template[data-two-cr-programme-page] {
	display: none !important;
}

.home_show .home_show_group {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
}

.home_show .home_show_group::before,
.home_show .home_show_group::after {
	display: none !important;
}

.home_show .home_show_item {
	position: relative;
	float: none !important;
	overflow: hidden;
	width: auto !important;
	height: 136px !important;
	margin: 0 !important;
	padding: 18px 66px 16px 22px !important;
	border: 0 !important;
	border-bottom: 1px solid #dce4eb !important;
	background: #fff !important;
	background-image: none !important;
	color: #31445a !important;
	transition: background .18s ease;
}

.home_show .home_show_item:nth-child(odd) {
	border-right: 1px solid #dce4eb !important;
}

.home_show .home_show_item:hover {
	background: #f4f7e7 !important;
}

.home_show .home_show_title {
	overflow: hidden;
	width: auto !important;
	height: auto !important;
	margin: 0 0 7px !important;
	color: #31445a !important;
	font-size: 18px !important;
	font-weight: 800;
	line-height: 1.35 !important;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.home_show .home_show_date {
	display: flex;
	align-items: center;
	gap: 6px;
	width: auto !important;
	height: auto !important;
	margin: 0 0 7px !important;
	color: #6f7b88 !important;
	font-size: 12px !important;
	line-height: 1.35 !important;
}

.home_show .home_show_time {
	position: relative;
	display: inline-block;
	flex: 0 0 14px;
	width: 14px !important;
	height: 14px !important;
	margin: 0 !important;
	border: 2px solid #91a33b;
	border-radius: 50%;
	background: none !important;
}

.home_show .home_show_time::before,
.home_show .home_show_time::after {
	position: absolute;
	left: 5px;
	width: 2px;
	border-radius: 2px;
	background: #91a33b;
	content: "";
	transform-origin: 50% 100%;
}

.home_show .home_show_time::before {
	top: 2px;
	height: 4px;
}

.home_show .home_show_time::after {
	top: 5px;
	height: 3px;
	transform: rotate(120deg);
}

.home_show .home_show_text {
	display: -webkit-box;
	overflow: hidden !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	color: #6f7b88 !important;
	font-size: 13px !important;
	line-height: 1.45 !important;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.home_show .home_show_more {
	position: absolute !important;
	top: 50% !important;
	right: 17px !important;
	left: auto !important;
	display: grid !important;
	place-items: center;
	width: 38px !important;
	height: 38px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid #dce4eb !important;
	border-radius: 50% !important;
	background: #f4f7e7 !important;
	color: transparent !important;
	font-size: 0 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	transform: translateY(-50%);
}

.home_show .home_show_more::after {
	color: #f4a12a;
	content: "›";
	font-size: 26px;
	font-weight: 500;
	line-height: 1;
}

.home_show .home_show_more:hover {
	border-color: #abbf4a !important;
	background: #abbf4a !important;
}

.home_show .swiper-button-prev,
.home_show .swiper-button-next {
	top: -66px !important;
	left: auto !important;
	display: grid !important;
	place-items: center;
	width: 38px !important;
	height: 38px !important;
	margin: 0 !important;
	border: 1px solid rgba(52, 66, 15, .2);
	border-radius: 50%;
	background: rgba(255, 255, 255, .68) !important;
	background-image: none !important;
	color: #34420f !important;
}

.home_show .swiper-button-prev {
	right: 62px !important;
}

.home_show .swiper-button-next {
	right: 17px !important;
}

.home_show .swiper-button-prev::after,
.home_show .swiper-button-next::after {
	font-size: 24px;
	font-weight: 500;
	line-height: 1;
}

.home_show .swiper-button-prev::after {
	content: "‹" !important;
}

.home_show .swiper-button-next::after {
	content: "›" !important;
}

.home_show .swiper-pagination {
	position: absolute !important;
	right: 0 !important;
	bottom: 16px !important;
	left: 0 !important;
	display: flex !important;
	justify-content: center;
	gap: 6px;
	width: 100% !important;
	height: 8px !important;
}

.home_show .swiper-pagination-bullet {
	width: 7px;
	height: 7px;
	margin: 0 !important;
	background: #d5dcc0;
	opacity: 1;
}

.home_show .swiper-pagination-bullet-active {
	width: 20px;
	border-radius: 999px;
	background: #91a33b;
}

/* A more editorial desktop treatment. The legacy homepage cards do not
 * include image markup, so a restrained branded tile supplies the missing
 * visual anchor without changing any WordPress content or links. */
@media (min-width: 751px) {
	.home_show .home_show_top {
		padding: 30px 195px 29px 34px !important;
		font-size: 36px !important;
	}

	.home_show .home_show_top::before {
		margin-bottom: 9px;
		font-size: 12px;
	}

	.home_show .home_show_item {
		height: 158px !important;
		padding: 23px 76px 20px 110px !important;
	}

	.home_show .home_show_item::before {
		position: absolute;
		top: 50%;
		left: 25px;
		display: grid;
		place-items: center;
		width: 66px;
		height: 66px;
		border: 1px solid rgba(52, 66, 15, .12);
		border-radius: 18px;
		background:
			radial-gradient(circle at 78% 78%, #f4a12a 0 6px, transparent 7px),
			linear-gradient(145deg, #abbf4a, #82952f);
		box-shadow: 0 10px 24px rgba(52, 66, 15, .14);
		color: #fff;
		content: "2CR";
		font-size: 15px;
		font-weight: 900;
		letter-spacing: .08em;
		transform: translateY(-50%);
	}

	.home_show .home_show_item.has-programme-artwork::before {
		display: none;
	}

	.home_show .two-cr-programme-artwork {
		position: absolute;
		top: 50%;
		left: 25px;
		display: block;
		overflow: hidden;
		width: 66px;
		height: 66px;
		border: 1px solid rgba(52, 66, 15, .12);
		border-radius: 18px;
		background: #f4f7e7;
		box-shadow: 0 10px 24px rgba(52, 66, 15, .14);
		opacity: 0;
		transform: translateY(-50%);
		transition: opacity .18s ease;
	}

	.home_show .home_show_item.has-programme-artwork .two-cr-programme-artwork {
		opacity: 1;
	}

	.home_show .two-cr-programme-artwork img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center;
	}

	.home_show .home_show_title {
		margin-bottom: 8px !important;
		font-size: 22px !important;
		line-height: 1.3 !important;
	}

	.home_show .home_show_date {
		gap: 8px;
		margin-bottom: 9px !important;
		font-size: 14px !important;
	}

	.home_show .home_show_time {
		flex-basis: 18px;
		width: 18px !important;
		height: 18px !important;
	}

	.home_show .home_show_time::before,
	.home_show .home_show_time::after {
		left: 7px;
	}

	.home_show .home_show_time::before {
		top: 3px;
		height: 5px;
	}

	.home_show .home_show_time::after {
		top: 7px;
		height: 4px;
	}

	.home_show .home_show_text {
		font-size: 15px !important;
		line-height: 1.5 !important;
	}

	.home_show .home_show_more {
		right: 20px !important;
		width: 46px !important;
		height: 46px !important;
	}

	.home_show .home_show_more::after {
		font-size: 30px;
	}

	.home_show .swiper-button-prev,
	.home_show .swiper-button-next {
		top: -74px !important;
		width: 42px !important;
		height: 42px !important;
	}

	.home_show .swiper-button-prev {
		right: 69px !important;
	}

	.home_show .swiper-button-next {
		right: 20px !important;
	}
}

@media (max-width: 750px) {
	.home_show {
		padding: 26px 0 36px !important;
	}

	.home_show > .wrap {
		width: calc(100% - 20px) !important;
	}

	.home_show .home_show_top {
		padding: 22px 102px 21px 19px !important;
		border-radius: 21px 21px 0 0;
		font-size: 27px !important;
	}

	.home_show .two-cr-programme-carousel-nav {
		right: 14px;
		gap: 6px;
	}

	.home_show .two-cr-programme-carousel-button {
		width: 34px;
		height: 34px;
		padding-bottom: 2px;
		font-size: 25px;
	}

	.home_show .two-cr-programme-carousel-status {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		clip-path: inset(50%);
		white-space: nowrap;
	}

	.home_show .home_show_btm {
		padding-bottom: 42px;
		border-radius: 0 0 21px 21px;
	}

	.home_show .home_show_group {
		grid-template-columns: minmax(0, 1fr);
	}

	.home_show .home_show_item {
		height: 148px !important;
		padding: 16px 57px 14px 133px !important;
		border-right: 0 !important;
	}

	.home_show .home_show_item::before {
		position: absolute;
		top: 50%;
		left: 17px;
		display: grid;
		place-items: center;
		width: 102px;
		height: 78px;
		border: 1px solid rgba(52, 66, 15, .12);
		border-radius: 13px;
		background:
			radial-gradient(circle at 82% 78%, #f4a12a 0 5px, transparent 6px),
			linear-gradient(145deg, #abbf4a, #82952f);
		box-shadow: 0 8px 20px rgba(52, 66, 15, .13);
		color: #fff;
		content: "2CR";
		font-size: 15px;
		font-weight: 900;
		letter-spacing: .08em;
		transform: translateY(-50%);
	}

	.home_show .home_show_item.has-programme-artwork::before {
		display: none;
	}

	.home_show .two-cr-programme-artwork {
		position: absolute;
		top: 50%;
		left: 17px;
		display: block;
		overflow: hidden;
		width: 102px;
		height: 78px;
		border: 1px solid rgba(52, 66, 15, .12);
		border-radius: 13px;
		background: #f4f7e7;
		box-shadow: 0 8px 20px rgba(52, 66, 15, .13);
		opacity: 0;
		transform: translateY(-50%);
		transition: opacity .18s ease;
	}

	.home_show .home_show_item.has-programme-artwork .two-cr-programme-artwork {
		opacity: 1;
	}

	.home_show .two-cr-programme-artwork img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center;
	}

	.home_show .home_show_title {
		display: -webkit-box;
		max-height: 2.7em;
		margin-bottom: 5px !important;
		font-size: 16px !important;
		line-height: 1.35 !important;
		white-space: normal;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
	}

	.home_show .home_show_date {
		margin-bottom: 5px !important;
		font-size: 11px !important;
	}

	.home_show .home_show_text {
		font-size: 12px !important;
		line-height: 1.42 !important;
		-webkit-line-clamp: 2;
	}

	.home_show .home_show_more {
		right: 13px !important;
		width: 34px !important;
		height: 34px !important;
	}

	.home_show .swiper-button-prev,
	.home_show .swiper-button-next {
		top: -60px !important;
		width: 34px !important;
		height: 34px !important;
	}

	.home_show .swiper-button-prev {
		right: 55px !important;
	}

	.home_show .swiper-button-next {
		right: 14px !important;
	}
}

@media (max-width: 390px) {
	.home_show .home_show_top {
		padding-right: 92px !important;
		font-size: 25px !important;
	}

	.home_show .swiper-button-prev {
		right: 50px !important;
	}

	.home_show .swiper-button-next {
		right: 10px !important;
	}
}
