/* RSCP Events: cards on the Events and Deals pages and the homepage. Not loaded on Riverwalk, which has its own events design.
   Scoped to these grids, so seasonal theme colors elsewhere are untouched. The !important flags beat the seasonal .event and .deal rules. */
body.rscp-cards {
	--ec-ink: #1c1b1b;
	--ec-ink-soft: #55606b;
	--ec-line: #DDE4EA;
	--ec-tint: #F1F5F8;
	--ec-btn: #193E69;
	--ec-btn-hover: #4B8299;
}
body.rscp-cards--mtc {
	--ec-tint: #EAF2F5;
	--ec-btn: #3A6B80;
	--ec-btn-hover: #18303B;
}
body.rscp-cards .events_dealsContainer .inner:has(> .singleBox) { gap: 24px; padding: 0 20px; box-sizing: border-box; }

/* Homepage slider: equal-height cards */
body.rscp-cards .events_dealsContainer .swiper-wrapper { align-items: stretch; }
body.rscp-cards .events_dealsContainer .swiper-slide.singleBox { height: auto; display: flex !important; flex-direction: column; justify-content: flex-start; }

body.rscp-cards .events_dealsContainer .singleBox:not(.noEvent):not(.noDeal):not(.both) {
	background: #fff !important;
	background-image: none !important;
	border: 1px solid var(--ec-line);
	box-sizing: border-box;
	overflow: hidden;
	transition: box-shadow 200ms ease;
}
body.rscp-cards .events_dealsContainer .inner > .singleBox:not(.noEvent):not(.noDeal):not(.both) { margin: 0 !important; } /* the slider sets its own gaps */
body.rscp-cards .events_dealsContainer .singleBox.show:not(.noEvent):not(.noDeal):not(.both) {
	display: flex !important;
	flex-direction: column;
	justify-content: flex-start;
}
body.rscp-cards .events_dealsContainer .singleBox:hover { box-shadow: 0 4px 16px rgba(25, 62, 105, .12); }

/* Same frame for every image; flyers carry text, so show them whole */
body.rscp-cards .events_dealsContainer .singleBox .image {
	height: auto;
	aspect-ratio: 4 / 3;
	background-color: var(--ec-tint);
	background-size: contain !important;
	background-repeat: no-repeat !important;
	background-position: center;
	flex: 0 0 auto;
}
body.rscp-cards .events_dealsContainer .singleBox .content {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	padding: 18px 20px 20px;
	box-sizing: border-box;
}
body.rscp-cards .events_dealsContainer .singleBox .type { display: none; }
body.rscp-cards .events_dealsContainer .singleBox .storeName {
	max-width: none;
	min-height: 0;
	margin: 0 0 6px;
	font-size: 13px;
	line-height: 1.3;
	letter-spacing: .05em;
	color: var(--ec-ink-soft);
}
body.rscp-cards .events_dealsContainer .singleBox .title {
	min-height: 0;
	margin: 0 0 10px;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.25;
	color: var(--ec-ink);
}
body.rscp-cards .events_dealsContainer .singleBox .date,
body.rscp-cards .events_dealsContainer .singleBox .time {
	margin: 0 0 2px;
	height: auto;
	font-size: 15px;
	line-height: 1.4;
	color: var(--ec-ink-soft);
}
body.rscp-cards .events_dealsContainer .singleBox .ctaBTN { margin: auto 0 0; padding-top: 18px; text-align: left; }
body.rscp-cards .events_dealsContainer .singleBox .ctaBTN a {
	display: block;
	min-height: 44px;
	padding: 11px 16px;
	box-sizing: border-box;
	text-align: center;
	text-decoration: none;
	font-weight: 500;
	background: var(--ec-btn);
	border: 1px solid var(--ec-btn);
	color: #fff;
	cursor: pointer;
}
body.rscp-cards .events_dealsContainer .singleBox .ctaBTN a:hover,
body.rscp-cards .events_dealsContainer .singleBox .ctaBTN a:focus {
	background: var(--ec-btn-hover);
	border-color: var(--ec-btn-hover);
	color: #fff;
}

/* Deal panel: same family as the card */
body.rscp-cards .events_dealsContainer .singleBox_INFO {
	margin: 0 !important;
	background: var(--ec-tint) !important;
	background-image: none !important;
	border: 1px solid var(--ec-line);
	box-sizing: border-box;
}
body.rscp-cards .events_dealsContainer .singleBox_INFO p,
body.rscp-cards .events_dealsContainer .singleBox_INFO a,
body.rscp-cards .events_dealsContainer .singleBox_INFO li,
body.rscp-cards .events_dealsContainer .singleBox_INFO span,
body.rscp-cards .events_dealsContainer .singleBox_INFO em,
body.rscp-cards .events_dealsContainer .singleBox_INFO b,
body.rscp-cards .events_dealsContainer .singleBox_INFO strong { color: var(--ec-ink); }
body.rscp-cards .events_dealsContainer .singleBox_INFO .closeBTN { color: var(--ec-ink); font-size: 28px; }

/* The theme zeroes card margins on small screens with !important, which removes the slider's gaps */
@media (max-width: 1024px) {
	body.rscp-cards .events_dealsContainer .swiper-slide.singleBox { margin-right: 20px !important; }
}
@media (max-width: 699px) {
	body.rscp-cards .events_dealsContainer .swiper-slide.singleBox { margin-right: 14px !important; }
}
@media (max-width: 1100px) {
	body.rscp-cards .events_dealsContainer .inner:has(> .singleBox) { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 640px) {
	body.rscp-cards .events_dealsContainer .inner:has(> .singleBox) { grid-template-columns: minmax(0, 1fr) !important; padding: 0 16px; gap: 20px; }
	body.rscp-cards .events_dealsContainer .swiper { width: auto; margin: 0 0 0 16px; } /* open on the right so the next card peeks in */
}
