/**
 * shop.css
 * WHAT: Shop / category / search page: category hero, quick chips, filter sidebar and mobile filter drawer, price slider, active-filter chips, pagination.
 * NOTE: Markup: woocommerce/archive-product.php and woocommerce/archive/*.php.
 * Loaded by inc/assets.php (order matters: later files may override earlier ones).
 */
.hn-archive__head{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:flex-end;
	gap:12px;
	margin-bottom:20px;
}
.hn-archive__head h1{
	font-size:clamp(24px,3vw,34px);
}
.hn-archive__count{
	margin:4px 0 0;
	color:var(--muted);
	font-size:14px;
}
.hn-archive__desc{
	margin-bottom:20px;
	color:#3d4a3f;
	max-width:820px;
}
.woocommerce-ordering select{
	padding:10px 14px;
	border:1.5px solid var(--line);
	border-radius:10px;
	background:#fff;
	font:inherit;
}
.navigation.pagination{
	margin-top:30px;
}
.navigation.pagination .nav-links{
	display:flex;
	justify-content:center;
	gap:8px;
	flex-wrap:wrap;
}
.page-numbers{
	display:grid;
	place-items:center;
	min-width:42px;
	height:42px;
	padding:0 12px;
	border-radius:10px;
	background:#fff;
	border:1px solid var(--line);
	font-weight:600;
}
.page-numbers.current{
	background:var(--grad-primary);
	color:#fff;
	border-color:transparent;
}
.hn-cathero{
	position:relative;
	overflow:hidden;
	background:linear-gradient(120deg,var(--green-l),var(--orange-soft));
	min-height:220px;
	display:flex;
	align-items:center;
}
.hn-cathero__bg{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
}
.hn-cathero:has(.hn-cathero__bg)::before{
	content:"";
	position:absolute;
	inset:0;
	z-index:1;
	background:linear-gradient(90deg,var(--cream) 0%,#fbf6eacc 40%,#fbf6ea00 75%);
}
.hn-cathero__in{
	position:relative;
	z-index:2;
	padding-block:34px;
}
.hn-cathero h1{
	font-size:clamp(30px,4.2vw,52px);
	margin:4px 0 8px;
}
.hn-cathero__p{
	max-width:520px;
	margin:0 0 16px;
	color:#3d4a3f;
}
.hn-cathero__chips{
	display:flex;
	flex-wrap:wrap;
	gap:8px 10px;
}
.hn-cathero__chips li{
	background:#fffc;
	border-radius:999px;
	padding:7px 14px;
	font-size:13px;
	font-weight:600;
	color:var(--green-d);
}
.hn-shop{
	padding-block:18px 40px;
}
.hn-shop .woocommerce-breadcrumb{
	font-size:13px;
	color:var(--muted);
	margin-bottom:14px;
}
.hn-shop__title{
	font-size:clamp(24px,3vw,34px);
	margin-bottom:12px;
}
.hn-toolbar{
	display:flex;
	align-items:center;
	gap:14px;
	margin-bottom:18px;
	flex-wrap:wrap;
}
.hn-quick{
	display:flex;
	gap:8px;
	overflow-x:auto;
	scrollbar-width:none;
	flex:1;
	min-width:0;
}
.hn-quick::-webkit-scrollbar{
	display:none;
}
.hn-quick a{
	display:block;
	white-space:nowrap;
	padding:8px 18px;
	border-radius:999px;
	background:#fff;
	border:1px solid var(--line);
	font-size:14px;
	font-weight:500;
}
.hn-quick a:hover{
	border-color:var(--green);
}
.hn-quick a.is-on{
	background:var(--grad-primary);
	color:#fff;
	border-color:transparent;
}
.hn-filter-btn{
	display:none;
	align-items:center;
	gap:8px;
	padding:9px 16px;
	border-radius:999px;
	border:1.5px solid var(--green);
	background:#fff;
	color:var(--green-d);
	font:600 14px var(--sans);
	cursor:pointer;
}
.woocommerce-ordering{
	margin:0;
}
.hn-shop__cols{
	display:grid;
	grid-template-columns:270px minmax(0,1fr);
	gap:28px;
	align-items:start;
}
.hn-filters{
	background:#fff;
	border-radius:var(--r);
	padding:16px 18px 18px;
	position:sticky;
	top:130px;
	max-height:calc(100dvh - 150px);
	overflow-y:auto;
	box-shadow:0 1px 0 var(--line);
}
.hn-filters__head{
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding-bottom:10px;
	border-bottom:1px solid var(--line);
	margin-bottom:6px;
}
.hn-filters__head strong{
	font-size:18px;
	font-family:var(--serif);
}
.hn-filters__head a{
	font-size:13px;
	color:var(--orange);
	font-weight:600;
}
.hn-filters__x{
	display:none;
	background:none;
	border:0;
	font-size:30px;
	line-height:1;
	cursor:pointer;
	color:var(--green-d);
}
.hn-fgroup{
	border-bottom:1px solid var(--line);
	padding:12px 0;
}
.hn-fgroup:last-of-type{
	border-bottom:0;
}
.hn-fgroup summary{
	cursor:pointer;
	font-weight:700;
	font-size:15px;
	list-style:none;
	display:flex;
	justify-content:space-between;
	align-items:center;
}
.hn-fgroup summary::-webkit-details-marker{
	display:none;
}
.hn-fgroup summary::after{
	content:"\2303";
	transition:transform .2s;
	color:var(--muted);
}
.hn-fgroup:not([open]) summary::after{
	transform:rotate(180deg);
}
.hn-fgroup ul{
	margin-top:10px;
	display:flex;
	flex-direction:column;
	gap:8px;
}
/*.hn-fitem--extra{*/
/*	display:none;*/
/*}*/
.hn-fgroup.is-expanded .hn-fitem--extra{
	display:list-item;
}
.hn-check{
	display:flex;
	align-items:center;
	gap:10px;
	cursor:pointer;
	font-size:14px;
}
.hn-check input{
	appearance:none;
	-webkit-appearance:none;
	width:18px;
	height:18px;
	border:1.5px solid #b9bfb3;
	border-radius:4px;
	flex:none;
	display:grid;
	place-items:center;
	background:#fff;
	margin:0;
	cursor:pointer;
}
.hn-check input:checked{
	background:var(--green);
	border-color:var(--green);
}
.hn-check input:checked::after{
	content:"";
	width:9px;
	height:5px;
	border-left:2px solid #fff;
	border-bottom:2px solid #fff;
	rotate:-45deg;
	translate:0 -1px;
}
.hn-check em{
	font-style:normal;
	color:var(--muted);
}
.hn-fmore{
	background:none;
	border:0;
	padding:8px 0 0;
	color:var(--green);
	font-weight:600;
	font-size:13px;
	cursor:pointer;
}
.hn-filters__foot{
	display:none;
	position:sticky;
	bottom:-18px;
	background:#fff;
	padding:12px 0 4px;
}
.hn-price-range{
	--l:0%;
	--r:0%;
	padding-top:10px;
}
.hn-range{
	position:relative;
	height:22px;
}
.hn-range::before{
	content:"";
	position:absolute;
	left:0;
	right:0;
	top:9px;
	height:4px;
	border-radius:2px;
	background:var(--line);
}
.hn-range::after{
	content:"";
	position:absolute;
	left:var(--l);
	right:var(--r);
	top:9px;
	height:4px;
	border-radius:2px;
	background:var(--orange);
}
.hn-range input{
	position:absolute;
	inset:0;
	width:100%;
	margin:0;
	background:none;
	pointer-events:none;
	-webkit-appearance:none;
	appearance:none;
	z-index:2;
}
.hn-range input::-webkit-slider-thumb{
	-webkit-appearance:none;
	pointer-events:auto;
	width:20px;
	height:20px;
	border-radius:50%;
	background:#fff;
	border:3px solid var(--orange);
	cursor:pointer;
	box-shadow:0 1px 4px #0003;
}
.hn-range input::-moz-range-thumb{
	pointer-events:auto;
	width:14px;
	height:14px;
	border-radius:50%;
	background:#fff;
	border:3px solid var(--orange);
	cursor:pointer;
}
.hn-range input::-webkit-slider-runnable-track{
	background:none;
}
.hn-range input::-moz-range-track{
	background:none;
}
.hn-range__out{
	margin:10px 0 0;
	font-weight:600;
	font-size:14px;
}
.hn-active{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	margin-bottom:14px;
}
.hn-active a{
	display:inline-flex;
	gap:6px;
	align-items:center;
	padding:6px 12px;
	border-radius:999px;
	background:var(--green-l);
	font-size:13px;
	font-weight:600;
}
.hn-active a:hover{
	background:var(--green);
	color:#000;
}
.hn-active__clear{
	background:none!important;
	color:var(--orange);
	text-decoration:underline;
}
.hn-archive__count{
	margin:0 0 12px;
	color:var(--muted);
	font-size:14px;
}
.hn-seo{
	margin-top:40px;
	padding:24px;
	background:#fff;
	border-radius:var(--r);
}
.hn-seo h2{
	font-size:22px;
	margin-bottom:10px;
}
.hn-filters-overlay{
	position:fixed;
	inset:0;
	background:#0009;
	z-index:250;
}
.hn-filters-overlay[hidden]{
	display:none;
}
@media (max-width:900px){
	.hn-shop__cols{
		grid-template-columns:1fr;
	}
	.hn-filter-btn{
		display:inline-flex;
	}
	.hn-filters{
		position:fixed;
		top:0;
		bottom:0;
		left:0;
		width:min(88vw,340px);
		max-height:none;
		height:100dvh;
		border-radius:0;
		z-index:260;
		transform:translateX(-102%);
		visibility:hidden;
		transition:transform .3s ease,visibility 0s .3s;
		padding-bottom:0;
	}
	.hn-filters.is-open{
		transform:none;
		visibility:visible;
		transition:transform .3s ease;
	}
	.hn-filters__x{
		display:block;
	}
	.hn-filters__foot{
		display:block;
		bottom:0;
	}
}
@media (max-width:720px){
	.hn-toolbar{
		gap:10px;
	}
	.hn-quick{
		order:3;
		flex:1 0 100%;
	}
	.woocommerce-ordering{
		margin-left:auto;
	}
	.hn-cathero{
		min-height:170px;
	}
	.hn-cathero__chips li{
		font-size:12px;
		padding:5px 10px;
	}
}

.woocommerce .woocommerce-ordering {
    margin: 0!important;
}