/**
 * Dynamic TAZZANT WooCommerce category archive — Lot 3.
 */

.tazzant-product-category .page-title,
.tazzant-product-category .wd-shop-builder,
.tazzant-product-category .shop-content-area > .sidebar-container {
	display: none !important;
}

/* Replace only the demo archive payload generated by WoodMart's selected
 * shop layout. The theme's structural main element remains intact. */
.tazzant-product-category #main-content > .wd-content-area {
	display: none !important;
}

.tazzant-product-category .main-page-wrapper {
	background: var(--tz-bg);
	padding-block: 0;
}

.tazzant-category-main,
.tazzant-category-main * {
	box-sizing: border-box;
}

.tazzant-category-main {
	--tazzant-category-accent: var(--tz-primary);
	--tazzant-category-soft: var(--tz-aqua-soft);
	background: var(--tz-bg);
	color: var(--tz-text);
	font-family: Nunito, Inter, ui-rounded, "Arial Rounded MT Bold", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	padding: 20px 20px 48px;
}

.tazzant-category-main.is-coral { --tazzant-category-accent: var(--tz-cta); --tazzant-category-soft: var(--tz-coral-soft); }
.tazzant-category-main.is-green { --tazzant-category-accent: var(--tz-green); --tazzant-category-soft: var(--tz-green-soft); }
.tazzant-category-main.is-yellow { --tazzant-category-accent: #e6a718; --tazzant-category-soft: var(--tz-yellow-soft); }
.tazzant-category-main.is-purple { --tazzant-category-accent: var(--tz-purple); --tazzant-category-soft: var(--tz-purple-soft); }

.tazzant-category-main a {
	color: inherit;
	text-decoration: none;
}

.tazzant-category-main svg {
	display: block;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.7;
}

.tazzant-category-container {
	margin-inline: auto;
	max-width: calc(var(--tz-content) + 40px);
	width: 100%;
}

.tazzant-category-breadcrumb {
	align-items: center;
	color: var(--tz-muted);
	display: flex;
	font-size: 11px;
	font-weight: 700;
	gap: 8px;
	margin: 0 0 13px;
	min-height: 28px;
}

.tazzant-category-breadcrumb a:hover,
.tazzant-category-breadcrumb a:focus-visible {
	color: var(--tazzant-category-accent);
}

.tazzant-category-breadcrumb [aria-current="page"] {
	color: var(--tz-text);
	font-weight: 850;
}

.tazzant-category-hero {
	align-items: center;
	background-color: var(--tazzant-category-soft);
	background-image: linear-gradient(90deg, rgb(255 255 255 / 93%) 0%, rgb(255 255 255 / 76%) 54%, rgb(255 255 255 / 20%) 100%), var(--tazzant-category-background, none);
	background-position: center;
	background-size: cover;
	border: 1px solid rgb(22 59 109 / 7%);
	border-radius: 28px;
	box-shadow: var(--tz-shadow-md);
	display: grid;
	gap: 32px;
	grid-template-columns: minmax(0, 1fr) 210px;
	min-height: 310px;
	overflow: hidden;
	padding: 38px 48px;
	position: relative;
}

.tazzant-category-hero::after {
	background: var(--tazzant-category-accent);
	border-radius: 50%;
	content: "";
	filter: blur(1px);
	height: 130px;
	opacity: .08;
	position: absolute;
	right: 70px;
	top: 40px;
	width: 130px;
}

.tazzant-category-hero__copy {
	max-width: 760px;
	position: relative;
	z-index: 2;
}

.tazzant-category-eyebrow,
.tazzant-category-heading p,
.tazzant-category-empty p {
	color: var(--tazzant-category-accent);
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .09em;
	margin: 0 0 7px;
	text-transform: uppercase;
}

.tazzant-category-hero h1 {
	color: var(--tz-text);
	font-size: clamp(34px, 4.1vw, 54px);
	font-weight: 950;
	letter-spacing: -.045em;
	line-height: .98;
	margin: 0;
	max-width: 720px;
}

.tazzant-category-hero__copy > p:not(.tazzant-category-eyebrow) {
	color: var(--tz-muted);
	font-size: 14px;
	font-weight: 620;
	line-height: 1.65;
	margin: 20px 0 0;
	max-width: 690px;
}

.tazzant-category-hero__trust {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 22px;
}

.tazzant-category-hero__trust span {
	align-items: center;
	background: rgb(255 255 255 / 80%);
	border: 1px solid rgb(22 59 109 / 8%);
	border-radius: var(--tz-radius-pill);
	display: inline-flex;
	font-size: 10px;
	font-weight: 850;
	gap: 7px;
	min-height: 34px;
	padding: 0 13px;
}

.tazzant-category-hero__trust svg {
	color: var(--tazzant-category-accent);
	height: 17px;
	width: 17px;
}

.tazzant-category-hero__image {
	align-items: center;
	display: flex;
	justify-content: center;
	position: relative;
	z-index: 2;
}

.tazzant-category-hero__image img {
	border-radius: 30px;
	box-shadow: 0 18px 35px rgb(22 59 109 / 14%);
	display: block;
	height: auto;
	max-width: 190px;
	transform: rotate(2deg);
	width: 100%;
}

.tazzant-category-children,
.tazzant-category-products,
.tazzant-category-related {
	background: var(--tz-surface);
	border: 1px solid var(--tz-border);
	border-radius: 26px;
	box-shadow: var(--tz-shadow-sm);
	margin-top: 20px;
	padding: 27px;
}

.tazzant-category-heading {
	align-items: flex-end;
	display: flex;
	gap: 20px;
	justify-content: space-between;
	margin-bottom: 19px;
}

.tazzant-category-heading h2 {
	color: var(--tz-text);
	font-size: clamp(23px, 2.5vw, 32px);
	font-weight: 950;
	letter-spacing: -.035em;
	line-height: 1.08;
	margin: 0;
}

.tazzant-category-heading > span {
	background: var(--tazzant-category-soft);
	border-radius: var(--tz-radius-pill);
	color: var(--tazzant-category-accent);
	font-size: 10px;
	font-weight: 850;
	padding: 7px 11px;
	white-space: nowrap;
}

.tazzant-category-child-grid {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.tazzant-category-child-card {
	align-items: center;
	background: #fbfefd;
	border: 1px solid rgb(22 59 109 / 7%);
	border-radius: 18px;
	display: grid;
	gap: 12px;
	grid-template-columns: 50px minmax(0, 1fr) 15px;
	min-height: 86px;
	padding: 12px;
	transition: box-shadow .18s ease, transform .18s ease, border-color .18s ease;
}

.tazzant-category-child-card:hover,
.tazzant-category-child-card:focus-visible {
	border-color: var(--tazzant-category-accent);
	box-shadow: 0 10px 22px rgb(22 59 109 / 8%);
	transform: translateY(-2px);
}

.tazzant-category-child-card__visual {
	align-items: center;
	background: var(--tz-aqua-soft);
	border-radius: 15px;
	color: var(--tz-primary);
	display: flex;
	height: 50px;
	justify-content: center;
	overflow: hidden;
	width: 50px;
}

.tazzant-category-child-card.is-tone-1 .tazzant-category-child-card__visual { background: var(--tz-coral-soft); color: var(--tz-cta); }
.tazzant-category-child-card.is-tone-2 .tazzant-category-child-card__visual { background: var(--tz-yellow-soft); color: #d99a10; }
.tazzant-category-child-card.is-tone-3 .tazzant-category-child-card__visual { background: var(--tz-purple-soft); color: var(--tz-purple); }
.tazzant-category-child-card.is-tone-4 .tazzant-category-child-card__visual { background: var(--tz-green-soft); color: #77a838; }

.tazzant-category-child-card__visual svg {
	height: 24px;
	width: 24px;
}

.tazzant-category-child-card__visual img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.tazzant-category-child-card strong,
.tazzant-category-child-card small {
	display: block;
}

.tazzant-category-child-card strong {
	font-size: 12px;
	font-weight: 900;
	line-height: 1.25;
}

.tazzant-category-child-card small {
	color: var(--tz-muted);
	font-size: 9.5px;
	font-weight: 650;
	line-height: 1.3;
	margin-top: 5px;
}

.tazzant-category-child-card > b {
	color: var(--tazzant-category-accent);
	font-size: 20px;
	font-weight: 500;
}

.tazzant-category-heading.is-products {
	margin-bottom: 16px;
}

.tazzant-filter-panel {
	background: #fbfefd;
	border: 1px solid rgb(69 197 180 / 18%);
	border-radius: 18px;
	margin-bottom: 18px;
	overflow: hidden;
}

.tazzant-filter-panel > summary {
	align-items: center;
	cursor: pointer;
	display: flex;
	font-size: 12px;
	font-weight: 900;
	gap: 9px;
	list-style: none;
	min-height: 50px;
	padding: 0 16px;
}

.tazzant-filter-panel > summary::-webkit-details-marker { display: none; }
.tazzant-filter-panel > summary svg { color: var(--tazzant-category-accent); height: 20px; width: 20px; }
.tazzant-filter-panel > summary b { font-size: 21px; font-weight: 500; margin-left: auto; transition: transform .18s ease; }
.tazzant-filter-panel[open] > summary b { transform: rotate(45deg); }

.tazzant-filter-panel form {
	border-top: 1px solid rgb(22 59 109 / 7%);
	padding: 17px;
}

.tazzant-filter-groups {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}

.tazzant-filter-groups fieldset {
	border: 0;
	margin: 0;
	min-width: 0;
	padding: 0;
}

.tazzant-filter-groups legend {
	font-size: 11px;
	font-weight: 900;
	margin-bottom: 9px;
}

.tazzant-filter-groups label {
	align-items: center;
	cursor: pointer;
	display: grid;
	font-size: 10.5px;
	font-weight: 700;
	gap: 7px;
	grid-template-columns: 17px minmax(0, 1fr) auto;
	min-height: 31px;
}

.tazzant-filter-groups input {
	accent-color: var(--tazzant-category-accent);
	height: 16px;
	margin: 0;
	width: 16px;
}

.tazzant-filter-groups label small {
	background: var(--tazzant-category-soft);
	border-radius: var(--tz-radius-pill);
	color: var(--tazzant-category-accent);
	font-size: 9px;
	font-weight: 850;
	min-width: 22px;
	padding: 3px 6px;
	text-align: center;
}

.tazzant-filter-actions {
	align-items: center;
	display: flex;
	gap: 13px;
	margin-top: 16px;
}

.tazzant-filter-actions button,
.tazzant-category-sort button {
	appearance: none;
	background: var(--tazzant-category-accent);
	border: 0;
	border-radius: var(--tz-radius-pill);
	color: #fff;
	cursor: pointer;
	font-family: inherit;
	font-size: 10.5px;
	font-weight: 900;
	min-height: 40px;
	padding: 0 17px;
}

.tazzant-filter-actions a {
	color: var(--tz-muted);
	font-size: 10.5px;
	font-weight: 800;
	text-decoration: underline;
}

.tazzant-smart-filter-note {
	align-items: center;
	background: var(--tazzant-category-soft);
	border: 1px dashed var(--tazzant-category-accent);
	border-radius: 17px;
	display: flex;
	gap: 12px;
	margin-bottom: 18px;
	padding: 14px 16px;
}

.tazzant-smart-filter-note > svg {
	color: var(--tazzant-category-accent);
	flex: 0 0 25px;
	height: 25px;
	width: 25px;
}

.tazzant-smart-filter-note strong,
.tazzant-smart-filter-note small { display: block; }
.tazzant-smart-filter-note strong { font-size: 11px; font-weight: 900; }
.tazzant-smart-filter-note small { color: var(--tz-muted); font-size: 9.5px; line-height: 1.45; margin-top: 3px; }

.tazzant-category-sort {
	align-items: center;
	display: flex;
	gap: 9px;
	justify-content: flex-end;
	margin-bottom: 16px;
}

.tazzant-category-sort label {
	color: var(--tz-muted);
	font-size: 10px;
	font-weight: 800;
}

.tazzant-category-sort select {
	background: #fff;
	border: 1px solid var(--tz-border);
	border-radius: var(--tz-radius-pill);
	color: var(--tz-text);
	font-family: inherit;
	font-size: 10.5px;
	font-weight: 750;
	height: 40px;
	padding: 0 35px 0 14px;
}

.tazzant-product-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.tazzant-product-card {
	background: #fff;
	border: 1px solid var(--tz-border);
	border-radius: 18px;
	box-shadow: var(--tz-shadow-sm);
	overflow: hidden;
}

.tazzant-product-card__image {
	background: #f9fbfa;
	display: block;
	overflow: hidden;
}

.tazzant-product-card__image img {
	aspect-ratio: 1 / 1;
	display: block;
	height: auto;
	object-fit: cover;
	transition: transform .25s ease;
	width: 100%;
}

.tazzant-product-card:hover .tazzant-product-card__image img { transform: scale(1.03); }

.tazzant-product-card__body { padding: 13px; }
.tazzant-product-card h3 { font-size: 12px; font-weight: 850; line-height: 1.35; margin: 0; }
.tazzant-product-card__rating { color: #f5ad17; display: block; font-size: 10px; font-weight: 850; margin-top: 7px; }
.tazzant-product-card__bottom { align-items: center; display: flex; gap: 9px; justify-content: space-between; margin-top: 12px; }
.tazzant-product-card__price { color: var(--tz-text); font-size: 13px; font-weight: 950; }
.tazzant-product-card__action { align-items: center; background: var(--tz-cta) !important; border-radius: 12px !important; color: #fff !important; display: inline-flex !important; font-size: 10px !important; gap: 6px; justify-content: center; min-height: 38px !important; padding: 0 11px !important; }
.tazzant-product-card__action svg { height: 18px; width: 18px; }

.tazzant-category-empty {
	align-items: center;
	background: linear-gradient(135deg, var(--tazzant-category-soft), #fff 75%);
	border: 1px solid rgb(22 59 109 / 7%);
	border-radius: 22px;
	display: grid;
	gap: 19px;
	grid-template-columns: 64px minmax(0, 1fr) auto;
	min-height: 160px;
	padding: 25px;
}

.tazzant-category-empty__icon {
	align-items: center;
	background: #fff;
	border-radius: 20px;
	box-shadow: var(--tz-shadow-sm);
	color: var(--tazzant-category-accent);
	display: flex;
	height: 64px;
	justify-content: center;
	width: 64px;
}

.tazzant-category-empty__icon svg { height: 31px; width: 31px; }
.tazzant-category-empty h3 { font-size: 22px; font-weight: 950; letter-spacing: -.03em; margin: 0; }
.tazzant-category-empty div > span { color: var(--tz-muted); display: block; font-size: 11px; line-height: 1.55; margin-top: 7px; }

.tazzant-category-empty__actions {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.tazzant-category-empty__actions a {
	align-items: center;
	background: #fff;
	border: 1px solid var(--tazzant-category-accent);
	border-radius: var(--tz-radius-pill);
	color: var(--tazzant-category-accent);
	display: inline-flex;
	font-size: 10px;
	font-weight: 900;
	justify-content: center;
	min-height: 39px;
	padding: 0 15px;
	white-space: nowrap;
}

.tazzant-category-empty__actions a.is-primary { background: var(--tazzant-category-accent); color: #fff; }

.tazzant-category-related__list {
	display: grid;
	gap: 11px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.tazzant-category-related__list a {
	align-items: center;
	background: #fbfefd;
	border: 1px solid rgb(22 59 109 / 7%);
	border-radius: 17px;
	display: grid;
	font-size: 11px;
	font-weight: 900;
	gap: 10px;
	grid-template-columns: 46px minmax(0, 1fr) 12px;
	min-height: 68px;
	padding: 9px;
}

.tazzant-category-related__list img { border-radius: 13px; height: 46px; width: 46px; }
.tazzant-category-related__list b { color: var(--tazzant-category-accent); font-size: 18px; }

.tazzant-category-pagination ul {
	display: flex;
	gap: 7px;
	justify-content: center;
	list-style: none;
	margin: 23px 0 0;
	padding: 0;
}

.tazzant-category-pagination a,
.tazzant-category-pagination span {
	align-items: center;
	background: #fff;
	border: 1px solid var(--tz-border);
	border-radius: 10px;
	display: flex;
	font-size: 11px;
	font-weight: 850;
	height: 38px;
	justify-content: center;
	min-width: 38px;
}

.tazzant-category-pagination .current { background: var(--tazzant-category-accent); color: #fff; }

.tazzant-category-main a:focus-visible,
.tazzant-category-main button:focus-visible,
.tazzant-category-main input:focus-visible,
.tazzant-category-main select:focus-visible,
.tazzant-category-main summary:focus-visible {
	outline: 3px solid var(--tz-yellow);
	outline-offset: 3px;
}

@media (max-width: 1199.98px) {
	.tazzant-category-child-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.tazzant-product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.tazzant-category-related__list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 991.98px) {
	.tazzant-category-main { padding: 10px 12px 30px; }
	.tazzant-category-hero { grid-template-columns: minmax(0, 1fr) 150px; min-height: 270px; padding: 28px; }
	.tazzant-category-hero__image img { max-width: 135px; }
	.tazzant-category-child-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.tazzant-category-empty { grid-template-columns: 58px minmax(0, 1fr); }
	.tazzant-category-empty__actions { flex-direction: row; grid-column: 1 / -1; }
	.tazzant-category-related__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767.98px) {
	.tazzant-category-breadcrumb { margin-inline: 3px; overflow: hidden; white-space: nowrap; }
	.tazzant-category-breadcrumb span:last-child { overflow: hidden; text-overflow: ellipsis; }
	.tazzant-category-hero { background-image: linear-gradient(135deg, rgb(255 255 255 / 94%) 0%, rgb(255 255 255 / 75%) 70%, transparent 100%), var(--tazzant-category-background, none); border-radius: 23px; display: block; min-height: 285px; padding: 25px 22px; }
	.tazzant-category-hero__copy { padding-right: 62px; }
	.tazzant-category-hero h1 { font-size: clamp(31px, 10vw, 43px); }
	.tazzant-category-hero__copy > p:not(.tazzant-category-eyebrow) { display: -webkit-box; font-size: 12px; line-height: 1.55; margin-top: 14px; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 4; }
	.tazzant-category-hero__trust { gap: 7px; margin-top: 16px; }
	.tazzant-category-hero__trust span { font-size: 8.8px; min-height: 31px; padding: 0 9px; }
	.tazzant-category-hero__image { position: absolute; right: 14px; top: 20px; }
	.tazzant-category-hero__image img { border-radius: 20px; max-width: 76px; }
	.tazzant-category-children,
	.tazzant-category-products,
	.tazzant-category-related { border-radius: 22px; margin-top: 14px; padding: 19px 16px; }
	.tazzant-category-heading { align-items: center; margin-bottom: 15px; }
	.tazzant-category-heading h2 { font-size: 23px; }
	.tazzant-category-child-grid { display: grid; grid-auto-columns: minmax(235px, 78vw); grid-auto-flow: column; grid-template-columns: none; overflow-x: auto; padding-bottom: 5px; scroll-snap-type: x proximity; scrollbar-width: none; }
	.tazzant-category-child-grid::-webkit-scrollbar,
	.tazzant-category-related__list::-webkit-scrollbar { display: none; }
	.tazzant-category-child-card { min-height: 84px; scroll-snap-align: start; }
	.tazzant-filter-panel > summary { min-height: 54px; }
	.tazzant-filter-groups { grid-template-columns: 1fr; }
	.tazzant-category-sort { align-items: stretch; display: grid; grid-template-columns: 1fr auto; }
	.tazzant-category-sort label { grid-column: 1 / -1; }
	.tazzant-category-sort select { width: 100%; }
	.tazzant-product-grid { gap: 10px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.tazzant-product-card__body { padding: 10px; }
	.tazzant-product-card__action span { display: none; }
	.tazzant-product-card__action { min-width: 40px; padding: 0 10px !important; }
	.tazzant-category-empty { display: flex; flex-direction: column; text-align: center; }
	.tazzant-category-empty__actions { display: grid; width: 100%; }
	.tazzant-category-empty__actions a { white-space: normal; }
	.tazzant-category-related__list { display: grid; grid-auto-columns: minmax(220px, 72vw); grid-auto-flow: column; grid-template-columns: none; overflow-x: auto; padding-bottom: 4px; scroll-snap-type: x proximity; scrollbar-width: none; }
	.tazzant-category-related__list a { scroll-snap-align: start; }
}

@media (prefers-reduced-motion: reduce) {
	.tazzant-category-main *,
	.tazzant-category-main *::before,
	.tazzant-category-main *::after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
	}
}
