.catalog-page {
	background: #f6f6f6;
}

.catalog-hero {
	padding: 2rem 0 0;
	border-bottom: 1px solid #e8e8e8;
	color: var(--imv-ink);
	background: #fff;
}

.catalog-hero__row {
	display: grid;
	min-height: 122px;
	align-items: center;
	grid-template-columns: 1fr minmax(300px, 375px);
	gap: 3rem;
}

.catalog-hero .eyebrow {
	margin-bottom: .35rem;
	color: #c7954e;
	font-size: .72rem;
	font-weight: 500;
	letter-spacing: .2em;
}

.catalog-hero h1 {
	margin: 0;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 750;
	letter-spacing: -.035em;
}

.catalog-search {
	position: relative;
	display: flex;
	width: 100%;
	height: 55px;
	padding-inline: 1.1rem;
	align-items: center;
	gap: .75rem;
	border: 1px solid #dfdfdf;
	border-radius: 18px;
	background: #f6f6f6;
}

.catalog-search .imv-icon {
	color: #a9a9a9;
}

.catalog-search input {
	width: 100%;
	height: 100%;
	padding: 0;
	border: 0;
	outline: 0;
	color: #323232;
	background: transparent;
	font-size: .95rem;
}

.catalog-search input::placeholder {
	color: #aaa;
}

.specialty-pills {
	display: flex;
	min-height: 66px;
	margin-top: .75rem;
	padding: .55rem 0;
	align-items: center;
	gap: .55rem;
	overflow-x: auto;
	border-top: 1px solid #ededed;
	scrollbar-width: none;
}

.filter-pill {
	display: inline-flex;
	min-height: 45px;
	padding: .65rem 1.15rem;
	flex: 0 0 auto;
	align-items: center;
	border: 1px solid #dfdfdf;
	border-radius: 999px;
	color: #565656;
	background: #fff;
	font-size: .88rem;
	text-decoration: none;
}

.filter-pill:hover,
.filter-pill.is-active {
	border-color: #c89a55;
	color: #fff;
	background: #c89a55;
}

.catalog-results {
	min-height: 70vh;
	padding-block: 2rem 5rem;
}

.catalog-toolbar {
	display: flex;
	margin-bottom: 1.5rem;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
}

.catalog-count {
	margin: 0;
	color: #737373;
	font-size: .92rem;
}

.catalog-count::first-line {
	color: #161616;
	font-weight: 750;
}

.catalog-selects {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .6rem;
}

.catalog-selects select {
	min-height: 45px;
	padding: .55rem 2.35rem .55rem 1rem;
	border: 1px solid #dfdfdf;
	border-radius: 999px;
	color: #555;
	background: #fff;
	font-size: .86rem;
}

.catalog-clear {
	display: inline-flex;
	min-height: 44px;
	padding: .6rem .5rem;
	align-items: center;
	color: #737373;
	font-size: .8rem;
}

.catalog-status {
	min-height: 0;
	color: #777;
	font-size: .82rem;
}

.catalog-page.is-loading .product-grid {
	opacity: .45;
	pointer-events: none;
}

.catalog-page .product-grid {
	gap: 1.1rem;
}

.catalog-page .product-card {
	border-radius: 20px;
	box-shadow: none;
	content-visibility: auto;
	contain-intrinsic-size: auto 480px;
}

.catalog-page .product-card__media {
	aspect-ratio: 4 / 3;
	background: linear-gradient(140deg, #fafafa, #f1f1f1);
}

.catalog-page .product-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.catalog-page .product-card__featured {
	right: .9rem;
	left: auto;
	padding: .35rem .7rem;
	background: #c7954e;
}

.catalog-page .product-card__body {
	padding: 1.35rem 1.35rem 1.25rem;
}

.catalog-page .product-card__title {
	min-height: 2.5em;
	font-size: 1.05rem;
}

.catalog-page .product-card .button--outline {
	border-color: #c7954e;
	color: #b9853c;
	background: #fff;
}

.catalog-pagination {
	margin-top: 3rem;
}

.catalog-pagination ul {
	display: flex;
	padding: 0;
	justify-content: center;
	gap: .4rem;
	list-style: none;
}

.catalog-pagination a,
.catalog-pagination span,
.catalog-pagination button {
	display: grid;
	min-width: 44px;
	height: 44px;
	place-items: center;
	border: 1px solid var(--imv-line);
	border-radius: 50%;
	background: #fff;
	text-decoration: none;
}

.catalog-pagination .current,
.catalog-pagination [aria-current="page"] {
	border-color: #c7954e;
	color: #fff;
	background: #c7954e;
}

.catalog-advice {
	padding-bottom: var(--imv-section);
	background: #f6f6f6;
}

.catalog-advice .container {
	display: flex;
	padding: 2rem;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
	border-radius: 20px;
	background: #fff;
}

.catalog-advice strong {
	font: 700 1.25rem var(--imv-font-display);
}

.catalog-advice p {
	margin: .3rem 0 0;
	color: var(--imv-muted);
}

@media (max-width: 900px) {
	.catalog-hero__row {
		grid-template-columns: 1fr;
		gap: 1.25rem;
		padding-block: 1.5rem 2rem;
	}
	.catalog-search {
		max-width: none;
	}
	.catalog-toolbar {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (max-width: 600px) {
	.catalog-hero {
		padding-top: .5rem;
	}
	.catalog-hero h1 {
		font-size: 2rem;
	}
	.specialty-pills {
		margin-inline: calc(-1 * var(--imv-gutter));
		padding-inline: var(--imv-gutter);
	}
	.catalog-selects {
		width: 100%;
	}
	.catalog-selects label {
		flex: 1 1 calc(50% - .5rem);
	}
	.catalog-selects select {
		width: 100%;
	}
	.catalog-clear {
		width: 100%;
		justify-content: center;
	}
	.catalog-advice .container {
		align-items: flex-start;
		flex-direction: column;
	}
	.catalog-advice .button {
		width: 100%;
	}
}
