/* Trailer Grid — reuses .rally-card-grid styles from card-grid section
 * (same markup classes). Only adds the Featured badge in the top-right. */

.rally-card-grid__empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 1rem;
	padding-block: 4rem;
	color: var(--rally-gray-dark, #1A1A1A);
}

.rally-card-grid__empty svg { color: var(--rally-red, #D10000); }

.rally-card-grid__empty h3 {
	font-size: clamp(1.5rem, 3vw, 2rem);
	margin: 0;
}

.rally-card-grid__empty p {
	margin: 0;
	max-width: 480px;
	color: var(--rally-gray, #7A7A7A);
	line-height: 1.6;
}

.rally-card-grid__empty-ctas {
	display: flex;
	gap: 0.75rem;
	flex-wrap: wrap;
	justify-content: center;
	margin-top: 0.5rem;
}

/* ============================================================
 * Filter chips — pill-style filter row, clean and modern.
 * ============================================================ */

.rally-trailer-chips {
	margin-bottom: 1.75rem;
}

.rally-trailer-chips__row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
}

.rally-trailer-chips__label {
	font-family: var(--rally-font-body);
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--rally-gray-dark, #1A1A1A);
	margin-right: 0.5rem;
}

/* The chip itself — pill with label : value : caret */
.rally-trailer-chip {
	position: relative;
	display: inline-block;
}

.rally-trailer-chip__button {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.4rem 0.85rem;
	background: var(--rally-white);
	border: 1.5px solid #D5D5D5;
	border-radius: 999px;
	font-family: var(--rally-font-body);
	font-size: 0.82rem;
	color: var(--rally-black);
	cursor: pointer;
	transition: border-color 160ms ease, background 160ms ease, color 160ms ease;
	white-space: nowrap;
}

.rally-trailer-chip__button:hover {
	border-color: var(--rally-black);
}

.rally-trailer-chip__button:focus-visible {
	outline: 2px solid var(--rally-red, #D10000);
	outline-offset: 2px;
}

.rally-trailer-chip__name {
	color: var(--rally-gray, #595959);
	font-weight: 600;
	letter-spacing: 0.02em;
}

.rally-trailer-chip__value {
	font-weight: 700;
	letter-spacing: 0.02em;
}

.rally-trailer-chip__caret {
	transition: transform 200ms ease;
}

.rally-trailer-chip.is-open .rally-trailer-chip__caret {
	transform: rotate(180deg);
}

/* Active state — chip turns into the brand red */
.rally-trailer-chip.is-selected .rally-trailer-chip__button {
	background: var(--rally-red, #D10000);
	border-color: var(--rally-red, #D10000);
	color: var(--rally-white);
}

.rally-trailer-chip.is-selected .rally-trailer-chip__name {
	color: rgba(255, 255, 255, 0.85);
}

/* Dropdown menu */

.rally-trailer-chip__menu {
	position: absolute;
	top: calc(100% + 6px);
	left: 0;
	z-index: 40;
	margin: 0;
	padding: 6px 0;
	list-style: none;
	background: var(--rally-white);
	border: 1px solid #E5E5E5;
	min-width: 100%;
	max-height: 280px;
	overflow-y: auto;
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12);
	font-family: var(--rally-font-body);
	font-size: 0.88rem;
}

.rally-trailer-chip__menu[hidden] { display: none; }

.rally-trailer-chip__menu li {
	padding: 0.55rem 1.1rem;
	cursor: pointer;
	color: var(--rally-black);
	white-space: nowrap;
	transition: background 120ms ease, color 120ms ease;
}

.rally-trailer-chip__menu li:hover {
	background: var(--rally-gray-light, #F5F5F5);
	color: var(--rally-red, #D10000);
}

.rally-trailer-chip__menu li[data-value=""] {
	color: var(--rally-gray, #595959);
	font-style: italic;
	border-bottom: 1px solid #EEE;
	margin-bottom: 4px;
}

/* Clear-all button */

.rally-trailer-chips__clear {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	background: transparent;
	border: 0;
	color: var(--rally-red, #D10000);
	font-family: var(--rally-font-body);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	cursor: pointer;
	padding: 0.4rem 0.5rem;
	margin-left: 0.25rem;
}

.rally-trailer-chips__clear:hover { text-decoration: underline; }

.rally-trailer-chips__count {
	margin: 0;
	font-size: 0.82rem;
	color: var(--rally-gray, #595959);
	font-style: italic;
	margin-left: auto;
}

@media (max-width: 600px) {
	.rally-trailer-chips__row { gap: 0.4rem; }
	.rally-trailer-chips__label { width: 100%; margin-bottom: 0.2rem; }
	.rally-trailer-chips__count { width: 100%; margin-left: 0; margin-top: 0.3rem; }
}

.rally-card-grid__filter-empty {
	grid-column: 1 / -1;
	padding: 3rem 1rem;
	text-align: center;
	background: var(--rally-gray-light, #F5F5F5);
	list-style: none;
	color: var(--rally-gray-dark, #1A1A1A);
}

.rally-card-grid__filter-empty p { margin: 0.3rem 0; }
.rally-card-grid__filter-empty strong { font-size: 1.05rem; }

.rally-card__badge {
	position: absolute;
	top: var(--rally-space-3);
	right: var(--rally-space-3);
	padding: 4px 10px;
	background: var(--rally-grad-red);
	color: var(--rally-white);
	font-family: var(--rally-font-body);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25);
	z-index: 1;
}
