/* Widen the category frame so tour cards match the homepage card size (~342px). */
.archive-tour .container.archive-tour__grid {
	width: min(100% - var(--layout-gutter), var(--layout-max));
}
.archive-tour__grid { display: grid; grid-template-columns: 280px 1fr; gap: 28px; align-items: start; }
.archive-tour__filter { position: sticky; top: 90px; background: var(--color-white); border: 1px solid var(--color-gray-200); border-radius: var(--radius-lg); padding: 22px; box-shadow: var(--shadow-soft); }
.archive-tour__field { margin-bottom: 14px; }
.archive-tour__field label { display: block; font-weight: 600; font-size: 0.88rem; margin-bottom: 6px; }
.archive-tour__field input, .archive-tour__field select { width: 100%; padding: 10px 12px; border: 1px solid var(--color-gray-200); border-radius: var(--radius-sm); font: inherit; }
.archive-tour__results .tour-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.archive-tour__quick { margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--color-gray-200); }
.archive-tour__quick-label { font-size: 0.78rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.06em; color: var(--color-gray-400); margin: 0 0 10px; }
.archive-tour__quick-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.archive-tour__quick-link { display: block; padding: 8px 10px; border-radius: var(--radius-input); font-size: 0.85rem; color: var(--color-primary); transition: background var(--transition); }
.archive-tour__quick-link:hover,
.archive-tour__quick-link.is-active { background: var(--color-warm); color: var(--color-primary); font-weight: 600; }
.archive-tour__pagination { margin-top: 32px; }

.search-tour--sidebar {
	display: flex;
	flex-direction: column;
	gap: 0;
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
	border-radius: 0;
}

.search-tour--sidebar .search-tour__field {
	border-right: 0;
	border-bottom: 1px solid var(--color-gray-200);
	padding: 0 0 14px;
	margin-bottom: 14px;
	flex-direction: column;
	align-items: stretch;
	gap: 8px;
	min-height: 0;
}

.search-tour--sidebar .search-tour__icon {
	display: none;
}

.search-tour--sidebar .search-tour__control,
.search-tour--sidebar .search-tour__field--date .flatpickr-input {
	width: 100%;
}

.archive-tour__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 20px;
}

.archive-tour__chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 12px;
	border-radius: var(--radius-pill);
	background: var(--color-white);
	border: 1px solid var(--color-gray-200);
	font-size: 0.82rem;
	color: var(--color-primary);
	transition: background var(--transition), border-color var(--transition);
}

.archive-tour__chip:hover {
	background: var(--color-warm);
	border-color: var(--color-primary-muted);
}

.archive-tour__chip--clear {
	color: var(--color-gray-600);
}

/* Mobile collapse trigger — desktop keeps full sidebar */
.archive-tour__filter .search-tour-toggle {
	display: none;
}

@media (max-width: 991px) {
	.archive-tour.section {
		padding-top: 8px;
		padding-bottom: 28px;
	}

	.archive-tour__grid {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.archive-tour__filter {
		position: static;
		padding: 0;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		background: transparent;
	}

	.archive-tour__filter .search-tour-toggle {
		display: flex;
		align-items: center;
		gap: 10px;
		width: 100%;
		margin: 0;
		padding: 10px 12px;
		border: 1px solid var(--color-border, #ECECF4);
		border-radius: var(--radius-search, 14px);
		background: var(--color-white);
		box-shadow: 0 4px 14px rgba(44, 34, 88, 0.06);
		color: var(--color-dark-text, #2C2258);
		text-align: left;
		cursor: pointer;
		font: inherit;
	}

	.archive-tour__filter .search-tour-toggle:hover,
	.archive-tour__filter .search-tour-toggle:focus-visible {
		outline: none;
		border-color: rgba(108, 60, 255, 0.35);
	}

	.archive-tour__filter .search-tour-toggle__icon {
		flex-shrink: 0;
		width: 34px;
		height: 34px;
		border-radius: 50%;
		background: var(--gradient-cta-glossy, linear-gradient(135deg, #6C3CFF 0%, #F33FA6 100%));
		position: relative;
	}

	.archive-tour__filter .search-tour-toggle__icon::after {
		content: '';
		position: absolute;
		inset: 9px;
		background: #fff;
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15.5 14h-.8l-.3-.3A6.5 6.5 0 1014 15.5l.3.3v.8l5 5 1.5-1.5-5-5zm-6 0A4.5 4.5 0 119.5 5 4.5 4.5 0 0110.5 14z'/%3E%3C/svg%3E");
		mask-size: contain;
		mask-repeat: no-repeat;
		mask-position: center;
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15.5 14h-.8l-.3-.3A6.5 6.5 0 1014 15.5l.3.3v.8l5 5 1.5-1.5-5-5zm-6 0A4.5 4.5 0 119.5 5 4.5 4.5 0 0110.5 14z'/%3E%3C/svg%3E");
		-webkit-mask-size: contain;
		-webkit-mask-repeat: no-repeat;
		-webkit-mask-position: center;
	}

	.archive-tour__filter .search-tour-toggle__text {
		flex: 1;
		min-width: 0;
		display: flex;
		flex-direction: column;
		gap: 1px;
	}

	.archive-tour__filter .search-tour-toggle__label {
		font-size: 0.88rem;
		font-weight: 700;
		line-height: 1.25;
	}

	.archive-tour__filter .search-tour-toggle__hint {
		font-size: 0.72rem;
		line-height: 1.3;
		color: var(--color-gray-400, #9AA0B4);
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.archive-tour__filter .search-tour-toggle__chevron {
		flex-shrink: 0;
		width: 12px;
		height: 8px;
		background-color: var(--color-gray-600, #6B6E82);
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1.4 0L6 4.6 10.6 0 12 1.4l-6 6-6-6z'/%3E%3C/svg%3E");
		mask-size: contain;
		mask-repeat: no-repeat;
		mask-position: center;
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1.4 0L6 4.6 10.6 0 12 1.4l-6 6-6-6z'/%3E%3C/svg%3E");
		-webkit-mask-size: contain;
		-webkit-mask-repeat: no-repeat;
		-webkit-mask-position: center;
		transition: transform 0.2s ease;
	}

	.archive-tour__filter:not(.is-search-open) .archive-tour__filter-panel {
		display: none;
	}

	.archive-tour__filter.is-search-open {
		padding: 12px;
		border: 1px solid var(--color-gray-200);
		border-radius: var(--radius-lg);
		box-shadow: var(--shadow-soft);
		background: var(--color-white);
	}

	.archive-tour__filter.is-search-open .search-tour-toggle {
		margin-bottom: 12px;
	}

	.archive-tour__filter.is-search-open .search-tour-toggle__chevron {
		transform: rotate(180deg);
	}

	.archive-tour__filter-panel {
		padding-top: 4px;
	}

	.archive-tour__quick {
		margin-top: 16px;
		padding-top: 14px;
	}

	.archive-tour__chips {
		margin-bottom: 12px;
	}

	.archive-tour__results .tour-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 576px) {
	.archive-tour__results .tour-grid--tiles {
		grid-template-columns: repeat(2, 1fr);
	}
}
