.woocommerce .woocommerce-breadcrumb { margin: 0 0 2rem; font-size: .78rem; }
.woocommerce .woocommerce-result-count { margin: .9rem 0; }
.woocommerce .woocommerce-ordering select { min-width: 220px; }
.woocommerce ul.products { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(1rem, 2.5vw, 2.25rem); margin: 2rem 0 var(--adage-section); padding: 0; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product { position: relative; width: auto !important; margin: 0 !important; float: none !important; }
.woocommerce ul.products li.product a img { width: 100%; aspect-ratio: 4 / 5; margin: 0 0 1rem; object-fit: cover; background: var(--adage-grey); }
.woocommerce ul.products li.product .adage-product-card__secondary { position: absolute; z-index: 1; inset: 0 0 auto; opacity: 0; transition: opacity .25s ease; }
.woocommerce ul.products li.product:hover .adage-product-card__secondary { opacity: 1; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding: 0; font-family: var(--adage-sans); font-size: .95rem; font-weight: 600; letter-spacing: 0; }
.woocommerce ul.products li.product .price { color: var(--adage-ink); font-size: .9rem; }
.woocommerce ul.products li.product .price ins { text-decoration: none; }
.woocommerce .onsale { display: none !important; }
.adage-product-card__category { margin-top: .35rem; color: color-mix(in srgb, var(--adage-ink), transparent 40%); font-size: .72rem; }
.adage-colour-swatches { display: flex; flex-wrap: wrap; gap: .4rem; margin: .55rem 0 0; padding: 0; list-style: none; }
.adage-colour-swatches li { display: inline-flex; align-items: center; gap: .25rem; font-size: .65rem; }
.adage-colour-swatches li > span:first-child { width: 12px; height: 12px; border: 1px solid var(--adage-ink); border-radius: 50%; background: var(--adage-grey); }
.adage-product-card__actions { display: flex; position: absolute; z-index: 4; top: .75rem; right: .75rem; flex-direction: column; gap: .35rem; }
.adage-product-card__actions button, .adage-product-card__actions a { width: 40px; min-height: 40px; padding: 0; font-size: .7rem; }
.adage-shop-filters { clear: both; margin: 1.5rem 0; border-block: 1px solid var(--adage-grey); }
.adage-shop-filters summary { min-height: 52px; display: flex; align-items: center; cursor: pointer; font-size: .75rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.adage-filter-form { display: grid; grid-template-columns: repeat(4, 1fr); align-items: end; gap: 1rem; padding: 1rem 0 1.5rem; }
.adage-filter-form label { font-size: .78rem; font-weight: 700; }
.adage-filter-check { display: flex; min-height: 44px; align-items: center; gap: .5rem; }
.adage-filter-check input { width: 20px; min-height: 20px; }
.adage-filter-chips { display: flex; flex-wrap: wrap; gap: .5rem; margin: 1rem 0; }
.adage-filter-chips a { display: inline-flex; min-height: 36px; align-items: center; gap: .35rem; padding: .3rem .65rem; border: 1px solid var(--adage-grey); font-size: .72rem; text-decoration: none; }
.adage-commerce [aria-busy="true"] ul.products { opacity: .45; pointer-events: none; }
.woocommerce div.product { display: grid; grid-template-columns: minmax(0, 7fr) minmax(340px, 5fr); gap: clamp(2rem, 5vw, 6rem); padding-block: clamp(2rem, 6vw, 5rem); }
.woocommerce div.product div.images, .woocommerce div.product div.summary { width: 100%; float: none; }
.woocommerce div.product div.summary { position: sticky; top: 110px; align-self: start; }
.woocommerce div.product .product_title { font-size: clamp(2.7rem, 5vw, 5.4rem); }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--adage-ink); font-size: 1.25rem; }
.woocommerce div.product form.cart { display: flex; gap: .65rem; }
.woocommerce div.product form.cart .adage-buy-now { background: transparent; color: var(--adage-ink); }
.adage-purchase-helpers { display: flex; flex-wrap: wrap; gap: 1rem; margin: 1rem 0; font-size: .8rem; font-weight: 700; }
.adage-product-information { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: var(--adage-grey); }
.adage-product-information section { padding: clamp(1rem, 3vw, 2.5rem); background: var(--adage-bone); }
.woocommerce .quantity .qty { width: 5rem; }
.woocommerce div.product .woocommerce-tabs { grid-column: 1 / -1; padding-top: var(--adage-section); }
.woocommerce div.product .woocommerce-tabs ul.tabs { display: flex; flex-wrap: wrap; gap: 1rem; padding: 0; border-bottom: 1px solid var(--adage-grey); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0; border: 0; border-radius: 0; background: transparent; }
.woocommerce div.product .woocommerce-tabs .panel { max-width: 900px; }
.woocommerce .woocommerce-message, .woocommerce .woocommerce-info, .woocommerce .woocommerce-error { border-top: 3px solid var(--adage-clay); background: var(--adage-white); }
.woocommerce .woocommerce-error { border-color: var(--adage-error); }
.woocommerce-checkout #payment { border-radius: 0; background: var(--adage-white); }
.woocommerce table.shop_table { border-radius: 0; background: var(--adage-white); }
.adage-sticky-cart { display: none; }
@media (max-width: 1024px) {
	.woocommerce ul.products { grid-template-columns: repeat(2, 1fr); }
	.woocommerce div.product { grid-template-columns: 1fr; }
	.woocommerce div.product div.summary { position: static; }
	.adage-filter-form { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 767px) {
	.woocommerce ul.products { gap: .75rem; }
	.woocommerce ul.products li.product .button { width: 100%; padding-inline: .4rem; font-size: .65rem; }
	.adage-filter-form { grid-template-columns: 1fr; }
	.adage-sticky-cart { position: fixed; z-index: 35; right: 0; bottom: 0; left: 0; display: flex; min-height: 66px; align-items: center; justify-content: space-between; gap: 1rem; padding: .65rem var(--adage-gutter); background: var(--adage-white); box-shadow: 0 -8px 24px rgb(0 0 0 / .12); }
	.adage-sticky-cart span { overflow: hidden; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
}

/* v1.1 editorial commerce treatment. */
.woocommerce ul.products {
	gap: clamp(1.25rem, 2.8vw, 3rem) clamp(.8rem, 1.8vw, 1.5rem);
}
.woocommerce ul.products li.product { overflow: hidden; }
.woocommerce ul.products li.product > a.woocommerce-loop-product__link { text-decoration: none; }
.woocommerce ul.products li.product a img {
	margin-bottom: 1.15rem;
	filter: saturate(.94);
	transition: filter .35s ease, transform .7s cubic-bezier(.2,.7,.2,1);
}
.woocommerce ul.products li.product:hover a img { filter: saturate(1.06); transform: scale(1.012); }
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--adage-display);
	font-size: clamp(1.35rem, 2vw, 2rem);
	font-weight: 400;
	letter-spacing: -.035em;
	line-height: 1.05;
}
.woocommerce ul.products li.product .price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: .4rem;
	margin-top: .65rem;
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .04em;
}
.woocommerce ul.products li.product .price del { opacity: .45; }
.adage-product-card__category { margin-top: .5rem; font-size: .66rem; letter-spacing: .08em; text-transform: uppercase; }
.adage-product-card__actions { top: .8rem; right: .8rem; }
.adage-product-card__actions button,
.adage-product-card__actions a {
	width: auto;
	min-height: 38px;
	gap: .7rem;
	padding: .55rem .85rem;
	border: 0;
	border-radius: 999px;
	background: color-mix(in srgb, var(--adage-white), transparent 8%);
	box-shadow: 0 8px 24px rgb(0 0 0 / .09);
	color: var(--adage-ink);
	font-size: .62rem;
	letter-spacing: .09em;
	text-transform: uppercase;
	opacity: 0;
	transform: translateY(-6px);
	transition: opacity .25s ease, transform .25s ease, background .25s ease;
}
.woocommerce ul.products li.product:hover .adage-product-card__actions button,
.woocommerce ul.products li.product:focus-within .adage-product-card__actions button { opacity: 1; transform: translateY(0); }
.adage-product-card__actions button:hover { background: var(--adage-citron); color: var(--adage-ink); }
.adage-product-badge {
	top: .8rem;
	left: .8rem;
	border-radius: 999px;
	padding: .52rem .72rem;
	background: var(--adage-citron);
	color: var(--adage-ink);
}
.adage-card-discover {
	display: flex !important;
	min-height: 42px;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-top: 1rem !important;
	padding: .8rem 0 !important;
	border: 0 !important;
	border-block: 1px solid color-mix(in srgb, var(--adage-ink), transparent 68%) !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: var(--adage-ink) !important;
	font-size: .66rem !important;
	font-weight: 700 !important;
	letter-spacing: .12em !important;
	text-decoration: none;
	text-transform: uppercase;
}
.adage-card-discover span:last-child { font-size: 1rem; transition: transform .2s ease; }
.adage-card-discover:hover span:last-child { transform: translate(3px, -3px); }
.woocommerce:not(.adage-home-products) ul.products li.product .button { margin-top: .85rem; }

.woocommerce div.product .product_title { letter-spacing: -.055em; }
.woocommerce div.product form.cart .button {
	min-height: 54px;
	padding-inline: 1.5rem;
}
.woocommerce div.product form.cart .single_add_to_cart_button { background: var(--adage-indigo); border-color: var(--adage-indigo); }
.woocommerce div.product form.cart .single_add_to_cart_button:hover { background: var(--adage-clay); border-color: var(--adage-clay); }
.adage-purchase-helpers { padding-block: .85rem; border-block: 1px solid color-mix(in srgb, var(--adage-ink), transparent 75%); }
.adage-product-information { margin-top: 1.5rem; background: var(--adage-ink); }
.adage-product-information section { min-height: 220px; background: var(--adage-white); }
.adage-product-information section h3 { font-size: clamp(1.5rem, 2.5vw, 2.4rem); }
.adage-product-passport { margin: 2rem 0; border-top: 1px solid var(--adage-ink); }
.adage-product-passport > .adage-eyebrow { margin: 1rem 0; color: var(--adage-clay); }
.adage-product-passport details { border-bottom: 1px solid color-mix(in srgb, var(--adage-ink), transparent 72%); }
.adage-product-passport summary {
	display: flex;
	min-height: 52px;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	font-size: .72rem;
	font-weight: 700;
	letter-spacing: .09em;
	text-transform: uppercase;
	cursor: pointer;
	list-style: none;
}
.adage-product-passport summary::-webkit-details-marker { display: none; }
.adage-product-passport summary span { font-size: 1.1rem; transition: transform .2s ease; }
.adage-product-passport details[open] summary span { transform: rotate(45deg); }
.adage-product-passport details > div { padding: 0 0 1.25rem; font-size: .86rem; }
.adage-product-passport details > div p { margin: 0 0 .75rem; }
.adage-product-passport details > div a { font-size: .68rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }

@media (max-width: 767px) {
	.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 1.3rem; }
	.adage-product-card__actions button { min-width: 38px; padding-inline: .65rem; opacity: 1; transform: none; }
	.adage-product-card__actions button span:first-child { display: none; }
	.adage-card-discover { font-size: .58rem !important; }
}

/* v1.3 collection archive direction. */
.tax-product_cat #page > .page-title,
.tax-product_cat #page > .term-description,
.tax-product_cat .woocommerce-products-header {
	display: none;
}

.adage-commerce { padding-bottom: var(--adage-section); }
.adage-commerce > .adage-container { width: min(100% - (2 * var(--adage-gutter)), 1440px); margin-inline: auto; }

.adage-collection-hero {
	display: grid;
	min-height: clamp(620px, 76svh, 820px);
	grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	margin-top: clamp(1rem, 2.5vw, 2.5rem);
	overflow: hidden;
	background: var(--adage-ink);
	color: var(--adage-white);
}
.adage-collection-hero__copy {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: clamp(2.25rem, 5vw, 5.25rem);
	background: var(--adage-oxblood);
}
.adage-collection-hero--shirts .adage-collection-hero__copy { background: var(--adage-indigo); }
.adage-collection-hero--pants .adage-collection-hero__copy { background: var(--adage-clay); }
.adage-collection-hero--to-ne-fe .adage-collection-hero__copy { background: #32231f; }
.adage-collection-hero h1 {
	max-width: 7ch;
	margin-bottom: .28em;
	color: inherit;
	font-size: clamp(4.4rem, 7.5vw, 8.7rem);
	letter-spacing: -.07em;
	line-height: .84;
}
.adage-collection-hero--to-ne-fe h1 { max-width: 9ch; font-size: clamp(4rem, 6.4vw, 7.6rem); }
.adage-collection-hero__copy > p:not(.adage-eyebrow) { max-width: 35ch; margin: 0; font-size: clamp(.95rem, 1.3vw, 1.16rem); }
.adage-collection-hero__count {
	margin-top: clamp(2.25rem, 5vh, 4rem);
	font-size: .64rem;
	font-weight: 750;
	letter-spacing: .15em;
	text-transform: uppercase;
}
.adage-collection-hero figure { position: relative; min-height: 0; margin: 0; overflow: hidden; }
.adage-collection-hero figure::after {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 65%, rgb(0 0 0 / .28));
	content: "";
}
.adage-collection-hero figure img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 28%;
	transition: transform 1s cubic-bezier(.2,.7,.2,1);
}
.adage-collection-hero--shirts figure img { object-position: 50% 34%; }
.adage-collection-hero--pants figure img { object-position: 50% 40%; }
.adage-collection-hero:hover figure img { transform: scale(1.018); }
.adage-collection-hero figcaption {
	position: absolute;
	z-index: 1;
	right: 1.5rem;
	bottom: 1.35rem;
	color: var(--adage-white);
	font-size: .6rem;
	font-weight: 750;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.adage-collection-nav {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-bottom: clamp(3rem, 6vw, 6rem);
	border-bottom: 1px solid color-mix(in srgb, var(--adage-ink), transparent 72%);
}
.adage-collection-nav a {
	display: flex;
	min-height: 74px;
	align-items: center;
	justify-content: space-between;
	gap: .75rem;
	padding: 1rem 1.25rem;
	border-right: 1px solid color-mix(in srgb, var(--adage-ink), transparent 78%);
	font-size: .66rem;
	font-weight: 750;
	letter-spacing: .1em;
	text-decoration: none;
	text-transform: uppercase;
	transition: background .2s ease, color .2s ease;
}
.adage-collection-nav a:first-child { padding-left: 0; }
.adage-collection-nav a:last-child { border-right: 0; }
.adage-collection-nav a[aria-current="page"] { background: var(--adage-ink); color: var(--adage-white); padding-inline: 1.25rem; }
.adage-collection-nav a:hover { background: var(--adage-citron); color: var(--adage-ink); padding-inline: 1.25rem; }

.tax-product_cat .adage-shop-filters {
	margin: 0 0 1.5rem;
	border-color: color-mix(in srgb, var(--adage-ink), transparent 68%);
}
.tax-product_cat .adage-shop-filters summary {
	min-height: 66px;
	justify-content: space-between;
	font-size: .66rem;
	letter-spacing: .14em;
}
.tax-product_cat .adage-shop-filters summary > span:last-child { font-size: 1.25rem; font-weight: 400; transition: transform .2s ease; }
.tax-product_cat .adage-shop-filters[open] summary > span:last-child { transform: rotate(45deg); }
.tax-product_cat .adage-filter-form {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	padding: 1rem 0 2rem;
}
.tax-product_cat .woocommerce-result-count {
	margin: 1.4rem 0 0;
	color: color-mix(in srgb, var(--adage-ink), transparent 32%);
	font-size: .72rem;
	letter-spacing: .06em;
}
.tax-product_cat .woocommerce-ordering { margin: .75rem 0 0; }
.tax-product_cat .woocommerce-ordering select {
	min-width: 250px;
	border: 0;
	border-bottom: 1px solid var(--adage-ink);
	background: transparent;
	font-size: .76rem;
}
.tax-product_cat.woocommerce ul.products {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(3rem, 6vw, 6.5rem) clamp(1rem, 2vw, 2rem);
	margin-top: clamp(3rem, 6vw, 5.5rem);
}
.tax-product_cat.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: clamp(1.7rem, 2.4vw, 2.6rem); }
.tax-product_cat .woocommerce-pagination { margin-bottom: var(--adage-section); }

@media (max-width: 1024px) {
	.adage-collection-hero { min-height: 660px; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); }
	.adage-collection-hero h1 { font-size: clamp(4rem, 8.5vw, 6.8rem); }
	.tax-product_cat .adage-filter-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.tax-product_cat.woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
	.adage-commerce > .adage-container { width: 100%; }
	.adage-collection-hero {
		display: flex;
		min-height: 0;
		flex-direction: column-reverse;
		margin-top: 0;
	}
	.adage-collection-hero figure { height: 58svh; }
	.adage-collection-hero__copy { min-height: 420px; padding: 3rem var(--adage-gutter); }
	.adage-collection-hero h1,
	.adage-collection-hero--to-ne-fe h1 { max-width: 8ch; font-size: clamp(3.9rem, 17vw, 6.2rem); }
	.adage-collection-hero__count { margin-top: 2.5rem; }
	.adage-collection-nav {
		grid-auto-columns: minmax(180px, 60vw);
		grid-auto-flow: column;
		grid-template-columns: none;
		margin-bottom: 3.5rem;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}
	.adage-collection-nav::-webkit-scrollbar { display: none; }
	.adage-collection-nav a { scroll-snap-align: start; }
	.tax-product_cat .adage-shop-filters,
	.tax-product_cat .woocommerce-result-count,
	.tax-product_cat .woocommerce-ordering,
	.tax-product_cat ul.products,
	.tax-product_cat .woocommerce-pagination { margin-inline: var(--adage-gutter); }
	.tax-product_cat .adage-filter-form { grid-template-columns: 1fr; }
	.tax-product_cat .woocommerce-ordering { float: none; }
	.tax-product_cat .woocommerce-ordering select { width: 100%; }
	.tax-product_cat.woocommerce ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 2.8rem .65rem;
		margin-top: 3rem;
	}
	.tax-product_cat.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 1.24rem; }
}
