/* One white, left-aligned introduction to the catalogue. */
.pls-catalog-page #page-title {
	padding: 24px 0 16px;
	margin-bottom: 0;
	background: #fff;
	text-align: left;
}

.pls-catalog-page #page-title .col {
	display: flex;
	flex-direction: column;
	align-items: stretch;
}

.pls-catalog-page #page-title .entry-breadcrumbs {
	margin: 0;
}

.pls-catalog-page #page-title .pls-breadcrumb {
	justify-content: flex-start;
	gap: 0;
	color: #76716d;
	font-size: 12px;
	line-height: 1.5;
}

.pls-catalog-page #page-title .pls-breadcrumb a {
	color: inherit;
}

.pls-catalog-page #page-title .pls-breadcrumb a:hover {
	color: #885b46;
}

.pls-catalog-page #page-title .pls-breadcrumb a:focus-visible {
	outline: 2px solid #9d705b;
	outline-offset: 3px;
}

.pls-catalog-page #page-title .entry-header {
	margin: 0;
	text-align: left;
}

.pls-catalog-page .entry-header h1.title {
	font-size: var(--pers-heading-size);
	font-weight: var(--pers-heading-weight);
	line-height: var(--pers-heading-line);
	letter-spacing: 0;
	color: #231f20;
	text-wrap: balance;
}

.pls-catalog-page #primary .pls-products-header {
	align-items: center;
	flex-wrap: wrap;
	gap: 24px;
	margin-bottom: 28px;
}

.pls-catalog-page #primary .pls-products-header-left {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 8px 16px;
	min-width: 0;
}

.pls-catalog-page #primary .pls-products-header-left > * {
	margin: 0;
}

.pls-catalog-page #primary .entry-header {
	margin: 0;
}

.pls-catalog-page #primary .entry-header h1.title {
	margin: 0;
}

.pls-catalog-page #primary .woocommerce-result-count {
	font-size: 14px;
	color: #76716d;
	white-space: nowrap;
}

.pls-catalog-page #primary .pls-products-header-right {
	flex: 0 0 auto;
}

@media (max-width: 767px) {
	.pls-catalog-page #page-title {
		padding: 18px 0 16px;
		margin-bottom: 0;
	}

	.pls-catalog-page #page-title .entry-breadcrumbs {
		margin-bottom: 0;
	}
}

/* Catalogue showcase: full photographs, a shared centre line and quiet captions. */
.pls-catalog-page #primary .woof_products_top_panel {
	width: 100%;
	margin: 0 0 24px;
	padding: 0;
}

.pls-catalog-page #primary .woof_products_top_panel > ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pls-catalog-page #primary .woof_products_top_panel li,
.pls-catalog-page #primary .woof_products_top_panel ul ul {
	display: contents;
	float: none;
	margin: 0;
	padding: 0;
}

.pls-catalog-page #primary .woof_products_top_panel ul ul > li:first-child,
.pls-catalog-page #primary .woof_products_top_panel a:is([data-tax="product_cat"], [data-tax="orderby"], [data-tax="perpage"]) {
	display: none;
}

.pls-catalog-page #primary .woof_products_top_panel:not(:has(a:is([data-tax="product_brand"], [data-tax="pa_gender"], [data-tax="pa_condition"], [data-tax="pa_shop-name"], [data-tax="pa_movement-type"], [data-tax="pa_case-material"], [data-tax="price"], [data-tax="onsales"], [data-tax="product_visibility"]))) {
	display: none !important;
}

.pls-catalog-page #primary .woof_products_top_panel a {
	display: inline-flex;
	align-items: center;
	max-width: 100%;
	min-height: 32px;
	margin: 0;
	padding: 6px 12px;
	border: 0;
	border-radius: 999px;
	background: #e7ded0;
	color: #302a25;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.4;
	text-decoration: none;
}

.pls-catalog-page #primary .woof_products_top_panel .woof_remove_ppi {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 0;
	background: none;
	font: inherit;
	color: inherit;
}

.pls-catalog-page #primary .woof_remove_ppi::after {
	content: '';
	flex: 0 0 10px;
	width: 10px;
	height: 10px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='m2 2 8 8M10 2l-8 8' stroke='%23302a25' stroke-width='1.3' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

.pls-catalog-page #primary .woof_reset_button_2 {
	order: 1;
	min-height: 32px;
	margin: 0;
	padding: 6px 12px;
	border: 0;
	border-radius: 999px;
	background: #eeece9;
	box-shadow: none;
	color: #504943;
	font: inherit;
	font-size: 14px;
	font-weight: 400 !important;
	line-height: 1.4;
	letter-spacing: 0;
	text-transform: none;
}

.pls-catalog-page #primary .woof_products_top_panel a:hover {
	background: #ddd1bf;
}

.pls-catalog-page #primary .woof_reset_button_2:hover {
	background: #e3dfd9;
}

.pls-catalog-page #primary .woof_products_top_panel :is(a, button):focus-visible {
	outline: 2px solid #9d705b !important;
	outline-offset: 2px;
}

@media (max-width: 767px) {
	.pls-catalog-page #primary .woof_products_top_panel a,
	.pls-catalog-page #primary .woof_reset_button_2 {
		min-height: 44px;
	}
}

.pls-catalog-page .pers-price-filter {
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
	color: #231f20;
}

.pls-catalog-page .pers-price-filter legend {
	float: none;
	width: auto;
	margin: 0 0 16px;
	padding: 0;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.4;
}

.pls-catalog-page .pers-price-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

.pls-catalog-page .pers-price-filter .pers-price-bound {
	display: flex !important;
	flex-direction: column;
	align-items: stretch;
	gap: 2px;
	min-width: 0;
	min-height: 52px;
	margin: 0;
	padding: 4px 0 8px;
	border: 0;
	border-bottom: 1px solid #b5aea9;
	border-radius: 0;
	color: #76716d;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.4;
}

.pls-catalog-page .pers-price-bound > span {
	flex: none;
}

.pls-catalog-page .pers-price-filter .pers-price-bound input[type="text"] {
	width: 100%;
	min-width: 0;
	height: 34px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: #231f20;
	font: inherit;
	font-size: 16px;
	font-variant-numeric: tabular-nums;
	line-height: 1.4;
	caret-color: #885b46;
}

.pls-catalog-page .pers-price-bound input::placeholder {
	color: #76716d;
	opacity: 1;
}

.pls-catalog-page .pers-price-bound:focus-within {
	border-color: #885b46;
}

.pls-catalog-page .pers-price-bound input:focus-visible {
	outline: 2px solid #9d705b;
	outline-offset: 2px;
}

.pls-catalog-page .pers-price-bound:has([aria-invalid="true"]) {
	border-color: #a33f35;
}

.pls-catalog-page .pers-price-error {
	margin: 12px 0 0;
	color: #a33f35;
	font-size: 13px;
	line-height: 1.5;
}

.pls-catalog-page .pers-price-error[hidden] {
	display: none;
}

.pls-catalog-page .woof_container_pa_shop-name {
	margin-top: 32px;
}

.pls-catalog-page .pers-brand-native,
.pls-catalog-page .woof_container_pa_gender .woof_container_inner > h4,
.pls-catalog-page .woof_container_pa_condition .woof_container_inner > h4,
.pls-catalog-page .woof_container_pa_shop-name .woof_container_inner > h4,
.pls-catalog-page .woof_container_pa_movement-type .woof_container_inner > h4,
.pls-catalog-page .woof_container_pa_case-material .woof_container_inner > h4,
.pls-catalog-page .woof_container_product_brand .woof_container_inner > h4,
.pls-catalog-page .pers-brand-filter [hidden] {
	display: none;
}

.pls-catalog-page .pers-brand-filter {
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
	color: #231f20;
}

.pls-catalog-page .pers-gender-filter .pers-brand-selected,
.pls-catalog-page .pers-condition-filter .pers-brand-selected,
.pls-catalog-page .pers-location-filter .pers-brand-selected,
.pls-catalog-page .pers-watch-filter .pers-brand-selected {
	display: none;
}

.pls-catalog-page .pers-location-city > summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	min-height: 44px;
	padding: 6px 0;
	list-style: none;
	color: #231f20;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.4;
	cursor: pointer;
}

.pls-catalog-page .pers-location-city > summary::-webkit-details-marker {
	display: none;
}

.pls-catalog-page .pers-location-city > summary svg {
	flex: none;
	color: #76716d;
}

.pls-catalog-page .pers-location-city[open] > summary svg {
	transform: rotate(180deg);
}

.pls-catalog-page .pers-location-city > summary:focus-visible {
	outline: 2px solid #9d705b;
	outline-offset: 2px;
}

.pls-catalog-page .pers-location-addresses {
	padding: 0 0 12px 12px;
}

.pls-catalog-page .pers-location-city:has(input:checked) > summary {
	color: #885b46;
}

.pls-catalog-page .pers-brand-filter legend {
	float: none;
	width: auto;
	margin: 0 0 12px;
	padding: 0;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.4;
}

.pls-catalog-page .pers-brand-search {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 12px;
	border-bottom: 1px solid #b5aea9;
	color: #76716d;
}

.pls-catalog-page .pers-brand-search svg {
	flex: none;
}

.pls-catalog-page .pers-brand-filter .pers-brand-search input[type="search"] {
	width: 100%;
	min-width: 0;
	height: 44px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	font: inherit;
	font-size: 15px;
	color: #231f20;
	caret-color: #885b46;
}

.pls-catalog-page .pers-brand-search input::placeholder {
	color: #76716d;
	opacity: 1;
}

.pls-catalog-page .pers-brand-option {
	/* WOOF forces inline-block !important on every label in its container. */
	display: flex !important;
	align-items: center;
	gap: 12px;
	min-height: 36px;
	margin: 0;
	padding-block: 6px;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.4;
	cursor: pointer;
}

.pls-catalog-page .pers-brand-filter .pers-brand-option[hidden] {
	display: none !important;
}

.pls-catalog-page .pers-brand-top span {
	/* The theme reset forces inherited font weight on spans. */
	font-weight: 600 !important;
}

.pls-catalog-page .pers-brand-option input {
	appearance: none;
	-webkit-appearance: none;
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	margin: 0;
	padding: 0;
	border: 1px solid #99918b;
	border-radius: 1px;
	background: #fff;
	box-shadow: none;
	cursor: pointer;
}

.pls-catalog-page .pers-brand-option input:checked {
	border-color: #885b46;
	background: #885b46 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m4 10 4 4 8-8' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center no-repeat;
}

.pls-catalog-page .pers-brand-option:has(input:checked) {
	color: #885b46;
}

.pls-catalog-page .pers-brand-option:has(input:disabled) {
	opacity: .5;
	cursor: default;
}

.pls-catalog-page .pers-offer-filters {
	min-width: 0;
	margin: 0 0 28px;
	padding: 0;
	border: 0;
}

.pls-catalog-page .pers-offer-filters .pers-brand-option {
	min-height: 52px;
	gap: 10px;
	padding: 12px 0;
	border-bottom: 1px solid #e8e5e2;
	color: var(--pers-offer-color);
}

.pls-catalog-page .pers-offer-sale { --pers-offer-color: #c33d36; }
.pls-catalog-page .pers-offer-featured { --pers-offer-color: #8a6222; }

.pls-catalog-page .pers-offer-filters svg {
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	/* Jost's visible letterforms sit slightly above the line-box centre. */
	transform: translateY(-1px);
}

.pls-catalog-page .pers-offer-filters input {
	/* Override the parent theme's top: 1px optical offset. */
	top: -1px;
}

.pls-catalog-page .pers-offer-featured svg { color: #bc8311; }

.pls-catalog-page .pers-offer-filters span {
	font-weight: 500 !important;
}

.pls-catalog-page .pers-offer-filters input:checked {
	border-color: var(--pers-offer-color);
	background-color: var(--pers-offer-color);
}

.pls-catalog-page .pers-offer-filters input:focus-visible {
	outline: 2px solid #9d705b;
	outline-offset: 3px;
}

.pls-catalog-page .pers-brand-selected {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 12px;
}

.pls-catalog-page .pers-brand-filter .pers-brand-chip {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-height: 36px;
	margin: 0;
	padding: 6px 10px;
	border: 0;
	border-radius: 0;
	background: #f4f1ee;
	box-shadow: none;
	color: #6d4938;
	font: inherit;
	font-size: 13px;
	line-height: 1.4;
	text-transform: none;
}

.pls-catalog-page .pers-brand-filter .pers-brand-more {
	min-height: 44px;
	margin: 0;
	padding: 8px 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: #6d4938;
	font: inherit;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.4;
	text-transform: none;
	letter-spacing: 0;
}

.pls-catalog-page .pers-brand-more:hover {
	text-decoration: underline;
	text-underline-offset: 4px;
}

.pls-catalog-page .pers-brand-empty {
	margin: 12px 0;
	color: #76716d;
	font-size: 14px;
	line-height: 1.5;
}

.pls-catalog-page .pers-brand-filter :is(input, button):focus-visible {
	outline: 2px solid #9d705b;
	outline-offset: 2px;
}

@media (max-width: 767px) {
	.pls-catalog-page .pers-brand-option,
	.pls-catalog-page .pers-brand-filter .pers-brand-chip {
		min-height: 44px;
	}
}

.pls-catalog-page .pers-catalog-categories {
	margin-bottom: 8px;
	padding-bottom: 16px;
	border-bottom: 1px solid #e8e5e2;
	font-family: inherit;
}

.pls-catalog-page .pers-catalog-categories :is(.pers-category-list, .pers-category-children) {
	list-style: none;
	margin: 0;
	padding: 0;
}

.pls-catalog-page .pers-category-item {
	margin: 0;
	padding: 0;
}

.pls-catalog-page .pers-category-list > .pers-category-item + .pers-category-item {
	margin-top: 4px;
}

.pls-catalog-page .pers-category-row {
	display: flex;
	align-items: center;
}

.pls-catalog-page .pers-category-link {
	display: flex;
	align-items: center;
	min-height: 44px;
	color: #231f20;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: 0;
	text-decoration: none;
	transition: color .2s ease-out;
}

.pls-catalog-page .pers-category-link {
	flex: 1;
	min-width: 0;
	padding-block: 8px;
	overflow-wrap: break-word;
}

.pls-catalog-page .pers-catalog-categories .pers-category-children {
	padding-left: 16px;
	margin-block: 4px 12px;
}

.pls-catalog-page .pers-category-children .pers-category-link {
	font-size: 15px;
}

.pls-catalog-page .pers-category-toggle {
	display: flex;
	flex: 0 0 44px;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: #76716d;
	cursor: pointer;
}

.pls-catalog-page .pers-category-toggle svg {
	display: block;
	transition: transform .2s ease-out;
}

.pls-catalog-page .pers-category-toggle[aria-expanded="true"] svg {
	transform: rotate(180deg);
}

.pls-catalog-page .pers-catalog-categories [hidden] {
	display: none;
}

.pls-catalog-page .pers-catalog-categories a[aria-current="page"] {
	color: #885b46;
	font-weight: 500;
}

.pls-catalog-page .pers-catalog-categories :is(a, button):hover {
	color: #885b46;
}

.pls-catalog-page .pers-catalog-categories :is(a, button):focus-visible {
	outline: 2px solid #9d705b;
	outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
	.pls-catalog-page .pers-category-toggle svg,
	.pls-catalog-page .pers-catalog-categories a {
		transition: none;
	}
}

.pers-catalog-filter-toggle,
.pers-ordering-mobile-label,
.pers-ordering-caret {
	display: none;
}

.pls-catalog-page .woocommerce-ordering .pls-ordering-label {
	align-self: center;
}

.pls-catalog-page .pers-ordering-icon {
	display: block;
	color: #76716d;
}

/* Mobile catalogue actions stay in the page flow, above the photographs. */
@media (max-width: 767px) {
	.pls-catalog-page .pls-canvas-sidebar {
		display: none;
	}

	.pls-catalog-page #primary .pls-products-header {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
		align-items: stretch;
		margin-bottom: 24px;
	}

	.pls-catalog-page #primary .pls-products-header-left,
	.pls-catalog-page #primary .pls-products-header-right {
		display: block;
		min-width: 0;
	}

	.pls-catalog-page #primary .pls-products-header-left {
		display: contents;
	}

	.pls-catalog-page #primary .pls-products-header-left .entry-header {
		grid-column: 1 / -1;
		grid-row: 1;
		margin-bottom: 8px;
	}

	.pls-catalog-page #primary .pers-catalog-filter-toggle {
		grid-column: 1;
		grid-row: 2;
	}

	.pls-catalog-page #primary .pls-products-header-right {
		grid-column: 2;
		grid-row: 2;
	}

	.pls-catalog-page #primary .pers-catalog-filter-toggle,
	.pls-catalog-page #primary .woocommerce-ordering {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 8px;
		width: 100%;
		min-width: 0;
		height: 48px;
		padding: 0 12px;
		margin: 0;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		background: #f4f4f2;
		color: #231f20;
		font-size: 14px;
		font-weight: 400;
		line-height: 1.2;
		letter-spacing: normal;
		text-transform: none;
	}

	.pls-catalog-page #primary .pers-catalog-filter-toggle {
		cursor: pointer;
	}

	.pls-catalog-page #primary .woocommerce-ordering {
		position: relative;
	}

	.pls-catalog-page #primary .woocommerce-ordering::after,
	.pls-catalog-page #primary .pers-ordering-desktop-label {
		display: none;
	}

	.pls-catalog-page #primary .pers-ordering-mobile-label,
	.pls-catalog-page #primary .pers-ordering-caret {
		display: block;
	}

	.pls-catalog-page #primary .woocommerce-ordering .pls-ordering-label {
		margin: 0;
		font-size: 14px;
		font-weight: 400;
		color: inherit;
	}

	.pls-catalog-page #primary .woocommerce-ordering select.orderby {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		padding: 0;
		margin: 0;
		opacity: 0;
		cursor: pointer;
	}

	.pls-catalog-page #primary .pers-catalog-filter-toggle:focus-visible,
	.pls-catalog-page #primary .woocommerce-ordering:focus-within {
		outline: 2px solid #9d705b;
		outline-offset: 3px;
	}
}
