.shop-wrap{padding:3.5rem 0 5.5rem}
.shop-wrap--departments{padding-top:3rem}
.shop-header{max-width:720px;margin-bottom:2.5rem}
.shop-wrap .page-title,
.shop-wrap .woocommerce-products-header{display:none}
.shop-header h1,.shop-header .woocommerce-products-header__title{font-family:var(--font-serif);font-size:clamp(2.2rem,4vw,3.4rem);font-weight:500;margin:0}
.woocommerce-breadcrumb{font-size:.82rem;color:var(--muted);margin-bottom:1.2rem}
.woocommerce-breadcrumb a{color:var(--leaf)}
.woocommerce-notices-wrapper{margin-bottom:1rem}
.shop-subcats{
	display:flex;
	flex-wrap:wrap;
	gap:.6rem;
	margin:0 0 2rem;
}
.shop-subcats a{
	border:1px solid var(--line-strong);
	padding:.45rem .9rem;
	font-size:.78rem;
	letter-spacing:.08em;
	text-transform:uppercase;
	font-weight:600;
	color:var(--muted);
}
.shop-subcats a:hover,
.shop-subcats a.is-current{
	background:var(--moss);
	border-color:var(--moss);
	color:var(--cream);
}

ul.products{
	display:grid !important;
	grid-template-columns:repeat(3,1fr);
	gap:1.25rem;
	list-style:none;
	margin:0;
	padding:0;
	width:100%;
}
ul.products::before,ul.products::after{display:none !important}
ul.products li.product{
	width:auto !important;
	margin:0 !important;
	float:none !important;
	background:var(--cream);
	padding:0 0 1.2rem;
}
ul.products li.product a img{
	width:100%;
	aspect-ratio:4/5;
	object-fit:cover;
	margin:0 0 .9rem;
}
ul.products li.product h2,
ul.products .woocommerce-loop-product__title{
	font-family:var(--font-serif);
	font-size:1.2rem;
	font-weight:500;
	padding:0 1rem;
	margin:0 0 .35rem;
}
ul.products .price{padding:0 1rem;color:var(--muted)}
ul.products .button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit{
	background:var(--moss) !important;
	color:var(--cream) !important;
	border-radius:2px !important;
	border:0 !important;
	font-size:.75rem !important;
	letter-spacing:.08em;
	text-transform:uppercase;
	font-weight:600 !important;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover{background:var(--moss-deep) !important}
.added_to_cart{margin-left:.6rem;font-size:.8rem}

.woocommerce-ordering{margin-bottom:1.5rem}
.woocommerce-ordering select{
	background:transparent;
	border:0;
	border-bottom:1px solid var(--line-strong);
	padding:.5rem 0;
}

.woocommerce div.product{display:grid;grid-template-columns:1.05fr .95fr;gap:3.5rem;align-items:start}
.woocommerce div.product div.images{margin:0}
.woocommerce div.product .summary{margin:0;padding-top:.4rem}
.woocommerce div.product .product_title{
	font-family:var(--font-serif);
	font-size:clamp(2rem,3vw,3rem);
	font-weight:500;
}
.woocommerce div.product p.price{color:var(--moss);font-size:1.3rem}
.woocommerce div.product .cart{margin-top:1.5rem}
.woocommerce div.product form.cart .button{padding:.95rem 1.6rem}
.woocommerce-tabs{grid-column:1/-1;margin-top:2rem}
.woocommerce-tabs ul.tabs{padding:0;margin:0 0 1rem;border:0;background:transparent}
.woocommerce-tabs ul.tabs li{background:transparent !important;border:0 !important;padding:0 1.2rem 0 0}
.woocommerce-tabs ul.tabs li a{font-size:.82rem;letter-spacing:.1em;text-transform:uppercase}
.related.products h2{margin:2.5rem 0 1.2rem}

.woocommerce-cart-form,.cart-collaterals,.woocommerce-checkout,.woocommerce-MyAccount-content{
	background:var(--linen);padding:1.5rem;
}
.woocommerce table.shop_table{border:0}
.woocommerce-info,.woocommerce-message,.woocommerce-error{
	border-top-color:var(--leaf) !important;
	background:var(--linen) !important;
}

@media (max-width:900px){
	ul.products{grid-template-columns:repeat(2,1fr)}
	.woocommerce div.product{grid-template-columns:1fr}
	.shop-layout{grid-template-columns:1fr}
	.shop-filters{position:static}
}
@media (max-width:600px){
	ul.products{grid-template-columns:1fr}
}

.shop-layout{
	display:grid;
	grid-template-columns:250px minmax(0,1fr);
	gap:2rem;
	align-items:start;
}
.shop-results ul.products{grid-template-columns:repeat(2,1fr)}
@media (min-width:1100px){
	.shop-results ul.products{grid-template-columns:repeat(3,1fr)}
}
.shop-wrap--filters .shop-subcats{display:none}
.shop-filters{position:sticky;top:calc(var(--announce) + var(--header) + 1.2rem)}
.shop-filter-box{
	background:#fff;
	border:1px solid var(--line);
	padding:1rem 1.1rem 1.15rem;
	margin:0 0 .9rem;
}
.shop-filter-box__title{
	font-family:var(--font-serif);
	font-size:1.15rem;
	font-weight:600;
	color:var(--copper);
	margin:0 0 .75rem;
}
.shop-filter-box__title a{color:inherit}
.shop-filter-box__title a::before{
	content:"› ";
	font-weight:400;
}
.shop-filter-cats{list-style:none;margin:0;padding:0}
.shop-filter-cats li{margin:0 0 .35rem}
.shop-filter-cats a{color:var(--moss);font-size:.92rem}
.shop-filter-cats a.is-current{
	color:var(--copper);
	font-weight:600;
}
.shop-filter-cats a.is-current::before{content:"› ";}
.shop-filter-search input[type=search]{
	width:100%;
	border:1px solid var(--line-strong);
	background:#fff;
	padding:.55rem .7rem;
	border-radius:0;
}
.shop-filter-brands{list-style:none;margin:0;padding:0}
.shop-filter-brands li{margin:0 0 .45rem}
.shop-filter-brands label{
	display:flex;
	align-items:center;
	gap:.5rem;
	font-size:.9rem;
	cursor:pointer;
}
.shop-filter-brands small{color:var(--muted)}
.shop-filter-price__track{
	position:relative;
	height:28px;
	margin:.4rem 0 .2rem;
}
.shop-filter-price__track input[type=range]{
	position:absolute;
	left:0;
	width:100%;
	accent-color:var(--moss);
	pointer-events:none;
}
.shop-filter-price__track input[type=range]::-webkit-slider-thumb{pointer-events:all}
.shop-filter-price__track input[type=range]::-moz-range-thumb{pointer-events:all}
.shop-filter-price__values{
	display:flex;
	justify-content:space-between;
	font-size:.82rem;
	color:var(--muted);
	margin:.2rem 0 .8rem;
}
.shop-filter-price__btn{
	background:var(--moss);
	color:var(--cream);
	border:0;
	padding:.5rem .9rem;
	font-size:.75rem;
	letter-spacing:.08em;
	text-transform:uppercase;
	font-weight:600;
	cursor:pointer;
}
