/* ==========================================================================
   Shop / category archive
   ========================================================================== */
body { overflow-x: clip; }

.bv-archive-hero {
	position: relative;
	width: 100vw;
	margin: 0 calc(50% - 50vw) 36px;
	padding: 72px 24px 28px;
	overflow: hidden;
	background: var(--bv-grad-dark);
	color: #fff;
}

.bv-archive-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: linear-gradient(rgba(255, 255, 255, .05) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .05) 1px, transparent 1px);
	background-size: 48px 48px;
	mask-image: linear-gradient(180deg, #000, transparent 90%);
}

.bv-archive-hero__glow {
	position: absolute;
	top: -40%;
	right: -10%;
	width: 60vw;
	height: 60vw;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(25, 194, 255, .35), transparent 60%);
	filter: blur(40px);
	animation: bv-drift 14s ease-in-out infinite alternate;
}

@keyframes bv-drift { to { transform: translate(-18%, 20%) scale(1.15); } }

.bv-archive-hero__inner,
.bv-archive-hero .bv-chips {
	position: relative;
	max-width: var(--bv-wrap);
	margin-inline: auto;
	padding-inline: 24px;
}

.bv-archive-hero .woocommerce-breadcrumb {
	margin: 0 0 14px;
	color: rgba(255, 255, 255, .55);
	font-size: 13px;
}

.bv-archive-hero .woocommerce-breadcrumb a { color: rgba(255, 255, 255, .75); }
.bv-archive-hero .woocommerce-breadcrumb a:hover { color: var(--bv-cyan); }
.bv-crumb-sep { margin: 0 8px; opacity: .5; }

.bv-archive-hero__title {
	margin: 0;
	font-size: clamp(36px, 6vw, 76px);
	line-height: 1;
	letter-spacing: -.035em;
	background: linear-gradient(100deg, #fff 30%, #8fd8ff 70%, #fff);
	background-size: 200% 100%;
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	animation: bv-shimmer 8s linear infinite;
}

.bv-archive-hero__meta { margin: 16px 0 0; color: rgba(255, 255, 255, .6); }
.bv-archive-hero__meta span { color: var(--bv-cyan); font-weight: 700; font-size: 1.2em; }
.bv-archive-hero__desc { max-width: 640px; margin-top: 12px; color: rgba(255, 255, 255, .7); }

/* Category chips */
.bv-chips {
	display: flex;
	gap: 10px;
	margin-top: 34px !important;
	padding-bottom: 6px;
	overflow-x: auto;
	scrollbar-width: none;
	mask-image: linear-gradient(90deg, #000 90%, transparent);
}

.bv-chips::-webkit-scrollbar { display: none; }

.bv-chip {
	flex: none;
	display: inline-flex;
	align-items: flex-start;
	gap: 4px;
	padding: 10px 18px;
	border: 1px solid rgba(255, 255, 255, .16);
	border-radius: 999px;
	background: rgba(255, 255, 255, .05);
	color: rgba(255, 255, 255, .85);
	font-size: 14px;
	font-weight: 500;
	white-space: nowrap;
	backdrop-filter: blur(8px);
	transition: background .3s, border-color .3s, transform .3s var(--bv-ease), color .3s;
}

.bv-chip sup { top: 0; font-size: 10px; opacity: .6; }
.bv-chip:hover { border-color: var(--bv-cyan); color: #fff; transform: translateY(-2px); }

.bv-chip.is-active {
	border-color: transparent;
	background: var(--bv-grad);
	color: #fff;
	box-shadow: var(--bv-glow);
}

/* Toolbar */
.bv-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 26px;
	padding: 10px 10px 10px 20px;
	border-radius: 999px;
	background: #fff;
	box-shadow: var(--bv-shadow);
}

.bv-toolbar .woocommerce-result-count { float: none; margin: 0; color: var(--bv-muted); font-size: 14px; }
.bv-toolbar .woocommerce-ordering { float: none; margin: 0; }

.bv-toolbar .woocommerce-ordering select {
	min-width: 180px;
	padding: 10px 40px 10px 18px;
	border: 0;
	border-radius: 999px;
	background: var(--bv-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%230a1433' stroke-width='2.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 16px center;
	appearance: none;
	font-weight: 500;
	cursor: pointer;
}

/* Pagination */
.woocommerce nav.woocommerce-pagination ul { display: inline-flex; flex-wrap: wrap; justify-content: center; gap: 8px; max-width: 100%; border: 0; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; }

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
	display: grid;
	place-items: center;
	min-width: 46px;
	height: 46px;
	padding: 0 12px;
	border-radius: 14px;
	background: #fff;
	color: var(--bv-ink);
	font-weight: 600;
	box-shadow: var(--bv-shadow);
	transition: transform .3s var(--bv-ease), background .3s, color .3s;
}

.woocommerce nav.woocommerce-pagination ul li a:hover { transform: translateY(-3px); color: var(--bv-blue); background: #fff; }

.woocommerce nav.woocommerce-pagination ul li span.current {
	background: var(--bv-grad);
	color: #fff;
	box-shadow: var(--bv-glow);
}

.woocommerce-no-products-found .woocommerce-info { margin: 40px 0; }

@media (max-width: 767px) {
	.bv-archive-hero { padding-top: 44px; }
	.bv-archive-hero__inner, .bv-archive-hero .bv-chips { padding-inline: 4px; }
	.bv-toolbar { border-radius: 18px; padding: 10px 12px; }
	.bv-toolbar .woocommerce-result-count { display: none; }
	.bv-toolbar .woocommerce-ordering, .bv-toolbar .woocommerce-ordering select { width: 100%; }
	.woocommerce nav.woocommerce-pagination ul li a,
	.woocommerce nav.woocommerce-pagination ul li span { min-width: 40px; height: 40px; padding: 0 8px; border-radius: 12px; }
}
