/**
 * All Watches listing — T-WATCH-LISTING / SB-WCH-001.
 */

html,
body.woocommerce-shop {
	overflow-x: clip;
}

.sb-all-watches {
	overflow: clip;
}

.sb-all-watches__intro {
	padding-top: var(--sb-section-y-lg);
	padding-bottom: var(--sb-space-14);
}

.sb-all-watches__title {
	margin: 0;
	text-transform: uppercase;
}

.sb-all-watches__subtitle { max-width: 34rem; margin: var(--sb-space-8) 0 0; color: var(--sb-color-text-muted); }

.sb-watch-collections {
	padding-inline: var(--sb-page-inline);
}

.sb-watch-collections__rail {
	display: flex;
	align-items: center;
	gap: var(--sb-grid-gap-tight);
	padding-block: var(--sb-space-11);
	overflow-x: auto;
	border-top: var(--sb-border-hairline) solid var(--sb-color-border);
	border-bottom: var(--sb-border-hairline) solid var(--sb-color-border);
	scrollbar-width: none;
}

.sb-watch-collections__rail::-webkit-scrollbar {
	display: none;
}

.sb-watch-collections__item {
	position: relative;
	flex: none;
	min-height: var(--sb-control-height-md);
	padding-block: var(--sb-space-7);
	border-bottom: var(--sb-border-hairline) solid transparent;
	color: var(--sb-color-text-muted);
	font-size: var(--sb-type-nav-drawer);
	font-weight: var(--sb-weight-regular);
	line-height: var(--sb-lh-display);
	letter-spacing: var(--sb-ls-nav);
	text-decoration: none;
}

.sb-watch-collections__item:hover,
.sb-watch-collections__item:focus-visible,
.sb-watch-collections__item.is-current {
	border-bottom-color: var(--sb-color-border-strong);
	color: var(--sb-color-text);
}

.sb-watch-collections__item:focus-visible {
	outline: var(--sb-focus-ring-width) solid var(--sb-color-focus);
	outline-offset: var(--sb-focus-ring-offset);
}

.sb-all-watches__catalog {
	padding-top: var(--sb-section-y-sm);
	padding-bottom: var(--sb-section-y);
}

.sb-all-watches__filters { position: relative; z-index: var(--sb-layer-sticky-sub); }
.sb-all-watches__filter-bar { display: flex; align-items: center; justify-content: space-between; gap: var(--sb-space-8); padding-block: var(--sb-space-8); border-top: var(--sb-border-hairline) solid var(--sb-color-border); border-bottom: var(--sb-border-hairline) solid var(--sb-color-border); }
.sb-all-watches__filter-bar p { margin: 0; color: var(--sb-color-text-muted); letter-spacing: var(--sb-ls-ui); }
.sb-all-watches__filter-actions { display: flex; align-items: center; gap: var(--sb-space-10); }
.sb-all-watches__filter-actions button { min-height: var(--sb-control-height-md); padding: 0; border: 0; background: transparent; color: var(--sb-color-text); cursor: pointer; }
.sb-all-watches__sort-label { color: var(--sb-color-text-muted); font-size: var(--sb-fs-12); letter-spacing: var(--sb-ls-ui); }
.sb-all-watches__filter-actions select { min-height: var(--sb-control-height-md); padding: 0 var(--sb-space-7) 0 0; border: 0; background: var(--sb-color-bg); color: var(--sb-color-text); font: inherit; letter-spacing: var(--sb-ls-ui); }
.sb-all-watches__drawer[hidden] { display: none; }
.sb-all-watches__drawer { position: fixed; inset: 0; z-index: var(--sb-layer-sheet); display: flex; justify-content: flex-end; }
.sb-all-watches__drawer-scrim { position: absolute; inset: 0; background: var(--sb-scrim-sheet); }
.sb-all-watches__drawer-panel { position: relative; width: min(32rem, 100%); height: 100%; padding: var(--sb-space-12) var(--sb-page-inline); overflow-y: auto; background: var(--sb-color-bg); }
.sb-all-watches__drawer-header, .sb-all-watches__drawer-footer { display: flex; align-items: center; justify-content: space-between; gap: var(--sb-space-8); }
.sb-all-watches__drawer-header { padding-bottom: var(--sb-space-10); border-bottom: var(--sb-border-hairline) solid var(--sb-color-border); }
.sb-all-watches__drawer-header p { margin: 0; }
.sb-all-watches__drawer fieldset { margin: 0; padding: var(--sb-space-10) 0; border: 0; border-bottom: var(--sb-border-hairline) solid var(--sb-color-border); }
.sb-all-watches__drawer legend { margin-bottom: var(--sb-space-6); color: var(--sb-color-text-muted); font-size: var(--sb-fs-12); letter-spacing: var(--sb-ls-ui); }
.sb-all-watches__drawer fieldset label { display: flex; align-items: center; min-height: var(--sb-control-height-md); gap: var(--sb-space-6); cursor: pointer; }
.sb-all-watches__drawer input[type="checkbox"] { width: var(--sb-space-7); height: var(--sb-space-7); margin: 0; accent-color: var(--sb-color-text); }
.sb-all-watches__price-fields { display: grid; grid-template-columns: 1fr 1fr; gap: var(--sb-space-5) var(--sb-space-7); }
.sb-all-watches__price-fields legend, .sb-all-watches__price-fields p { grid-column: 1 / -1; }
.sb-all-watches__price-fields input { width: 100%; min-height: var(--sb-control-height-md); padding-inline: var(--sb-space-6); border: var(--sb-border-hairline) solid var(--sb-color-border-control); background: var(--sb-color-bg); color: var(--sb-color-text); }
.sb-all-watches__drawer-footer { position: sticky; bottom: 0; margin-top: var(--sb-space-10); padding-block: var(--sb-space-8); background: var(--sb-color-bg); }
.sb-all-watches__collections-banner { position: relative; min-height: clamp(22rem, 55vw, 42rem); margin-block: var(--sb-section-y-sm); overflow: hidden; background: var(--sb-color-bg-inverse); color: var(--sb-color-text-inverse); }
.sb-all-watches__collections-banner::after { position: absolute; inset: 0; background: var(--sb-scrim-sheet); content: ''; }
.sb-all-watches__collections-banner img { width: 100%; height: 100%; object-fit: cover; }
.sb-all-watches__collections-banner-content { position: absolute; inset: 50% auto auto var(--sb-page-inline); z-index: 1; transform: translateY(-50%); }
.sb-all-watches__collections-banner-content h2 { max-width: 26rem; margin: var(--sb-space-5) 0 var(--sb-space-10); color: var(--sb-color-text-inverse); }
.sb-all-watches__collections-banner-content .sb-eyebrow { color: var(--sb-color-text-inverse-secondary); }
.sb-all-watches__collections-banner-content .sb-btn { border-color: var(--sb-color-text-inverse); background: var(--sb-color-text-inverse); color: var(--sb-color-bg-inverse); }
.sb-all-watches__grid .sb-watch-card--featured { grid-column: 1 / -1; }
.sb-watch-card__price { margin: var(--sb-space-5) 0 0; color: var(--sb-color-text-muted); }
.sb-all-watches__services { margin-top: var(--sb-section-y-sm); }
.sb-all-watches__services .sb-grid--facts { padding-block: var(--sb-space-12); }
.sb-all-watches__services .sb-label { margin-bottom: var(--sb-space-5); color: var(--sb-color-text-inverse-secondary); }
.sb-all-watches__services .sb-body, .sb-all-watches__services a { color: var(--sb-color-text-inverse-body); }
.sb-all-watches-drawer-open { overflow: hidden; }

.sb-all-watches__grid {
	align-items: start;
}

.sb-all-watches__load {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--sb-space-8);
	margin-top: var(--sb-section-y-sm);
	padding-top: var(--sb-space-13);
	border-top: var(--sb-border-hairline) solid var(--sb-color-border);
}

.sb-all-watches__showing {
	margin: 0;
	letter-spacing: var(--sb-ls-ui);
	text-transform: uppercase;
}

.sb-all-watches__load .sb-btn {
	width: 100%;
}

.sb-all-watches__load [hidden] {
	display: none;
}

@media (max-width: 767px) {
	.sb-all-watches__intro {
		padding-top: var(--sb-section-y-mobile-sm);
		padding-bottom: var(--sb-space-11);
	}

	.sb-all-watches__title {
		font-size: var(--sb-type-hero-mobile-page);
	}

	.sb-all-watches__filter-bar { align-items: flex-start; }
	.sb-all-watches__filter-actions { gap: var(--sb-space-7); }
	.sb-all-watches__sort-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.sb-all-watches__filter-actions select { max-width: 8rem; }
	/* The filter control establishes the sticky-sub stacking context (40), so
	 * this sheet stays beneath the fixed header (50). Begin it below the
	 * compact header rather than placing its Close control in the header's
	 * hit area. */
	.sb-all-watches__drawer { inset: var(--sb-header-height-mobile) 0 0; }
	.sb-all-watches__drawer-panel { width: 100%; height: 100%; max-height: none; padding-inline: var(--sb-page-inline-mobile); }
	.sb-all-watches__drawer-header [data-sb-all-watches-close] { min-height: var(--sb-control-height-md); }
	.sb-all-watches__collections-banner { min-height: 28rem; margin-inline: calc(var(--sb-page-inline-mobile) * -1); }
	.sb-all-watches__collections-banner-content { inset-inline: var(--sb-page-inline-mobile); }
	.sb-all-watches__grid .sb-watch-card--featured { grid-column: 1 / -1; }

	.sb-watch-collections {
		padding-inline: 0;
	}

	.sb-watch-collections__rail {
		gap: var(--sb-space-10);
		padding: var(--sb-space-8) var(--sb-page-inline-mobile);
	}

	.sb-watch-collections__item {
		min-height: var(--sb-control-height-md);
	}

	.sb-all-watches__catalog {
		padding-top: var(--sb-space-11);
		padding-bottom: var(--sb-section-y-mobile);
	}

	.sb-all-watches__load {
		margin-top: var(--sb-space-20);
	}
}
