/*
 * Planșa tehnică (IMPECCABLE 2) — antetul, primul ecran al primei pagini și cardurile cu balonașe.
 * Măsurile vin din comp-ul aprobat (.impeccable/mocks/decision/v2/plansa-baros.png), convertit la 1440 px.
 * Se contopește în zbang.css și în theme.json la faza 3.
 */

:root {
	--zbang-gutter: 16px;
}

/* ---------- Antetul: bara Grafit și navigația albă  (de la 601 px; telefonul are regulile lui mai jos) ---------- */
@media (min-width: 601px) {
	.zbang-site-header {
		box-shadow: none;
	}
	.zbang-site-header .zbang-header {
		padding-right: 0 !important;
		padding-left: 0 !important;
		background: var(--wp--preset--color--white) !important;
	}
	.zbang-header > .zbang-header__top {
		display: grid !important;
		grid-template-columns: 1fr minmax(0, 565px) 1fr;
		align-items: center;
		gap: var(--wp--preset--spacing--4);
		max-width: none !important;
		min-height: 54px;
		margin: 0 !important;
		padding: 7px var(--zbang-gutter) !important;
		box-sizing: border-box;
		background: var(--wp--preset--color--black);
		color: var(--wp--preset--color--white);
	}
	.zbang-header__top .zbang-logo img {
		height: 40px;
	}
	.zbang-header__top .zbang-search {
		max-width: none;
		width: 100%;
	}
	.zbang-header__top .zbang-search .wp-block-search__inside-wrapper {
		box-sizing: border-box;
		height: 40px;
		padding: 4px;
		background: var(--wp--preset--color--white);
		border-radius: var(--wp--custom--radius--card);
	}
	.zbang-header__top .zbang-search .wp-block-search__input {
		padding: 0 var(--wp--preset--spacing--3);
		color: var(--wp--preset--color--black);
	}
	.zbang-header__top .zbang-search .wp-block-search__input::placeholder {
		color: var(--wp--preset--color--otel);
	}
	.zbang-header__top .zbang-search .wp-block-search__button {
		border-radius: var(--wp--custom--radius--control);
		background: var(--wp--preset--color--red);
		padding: 0 var(--wp--preset--spacing--4);
		font-weight: 600;
	}
	.zbang-header__top .zbang-header__actions .wc-block-customer-account__visual,
	.zbang-header__top .zbang-header__actions .zbang-fav-link__icon {
		display: inline-flex !important;
	}
	.zbang-header__top .zbang-header__actions a,
	.zbang-header__top .wp-block-woocommerce-customer-account a {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		font-size: var(--wp--preset--font-size--ui) !important;
		font-weight: 400;
	}
	.zbang-header__top .zbang-header__actions {
		justify-self: end;
		gap: var(--wp--preset--spacing--4) !important;
		font-size: var(--wp--preset--font-size--ui);
		font-weight: 400;
	}
	.zbang-header__top .zbang-header__actions a,
	.zbang-header__top .zbang-header__actions .wc-block-mini-cart__button,
	.zbang-header__top .wp-block-woocommerce-customer-account a {
		color: var(--wp--preset--color--white);
		text-decoration: none;
	}
	.zbang-header__top .wc-block-customer-account__visual,
	.zbang-header__top .wc-block-customer-account__visual svg,
	.zbang-header__top .wc-block-mini-cart__icon {
		color: var(--wp--preset--color--white);
		fill: currentColor;
	}
	.zbang-header__top a:hover {
		text-decoration: underline;
		text-underline-offset: 4px;
	}

	.zbang-header > .zbang-cats {
		max-width: none !important;
		justify-content: center !important;
		margin: 0 !important;
		border-top: 0;
		border-bottom: 1px solid var(--wp--preset--color--linie);
		background: var(--wp--preset--color--white);
	}
	.zbang-header > .zbang-cats,
	.zbang-header > .zbang-cats .wp-block-navigation__responsive-container-content,
	.zbang-header > .zbang-cats .wp-block-navigation__container {
		justify-content: center !important;
	}
	.zbang-header > .zbang-cats .wp-block-navigation__container {
		gap: 0 var(--wp--preset--spacing--2) !important;
	}
	.zbang-header > .zbang-cats .wp-block-navigation-item__content {
		padding: 11px 10px !important;
		font-size: var(--wp--preset--font-size--ui);
		font-weight: 400 !important;
		letter-spacing: 0;
		color: var(--wp--preset--color--black);
	}
	.zbang-header > .zbang-cats .wp-block-navigation-item__content:hover {
		background: transparent;
		text-decoration: underline;
		text-underline-offset: 6px;
	}
	.zbang-header > .zbang-cats .wp-block-navigation__submenu-icon {
		display: none;
	}
	.zbang-header > .zbang-cats .is-accent > .wp-block-navigation-item__content {
		color: var(--wp--preset--color--red);
	}
}

/* ---------- Prima pagină: banner-ul cotat ---------- */
.zbang-home {
	margin-block-start: 0 !important;
	padding-top: 0 !important;
}
/* Scena: banda gri-rece din comp, de sub navigație până la baza banner-ului, cu grila milimetrică ca subtext */
.zbang-home > .zbang-scena {
	max-width: none !important;
	margin: 0 calc(-1 * var(--wp--style--root--padding-right, 0px)) 0 calc(-1 * var(--wp--style--root--padding-left, 0px)) !important;
	padding: 12px var(--zbang-gutter) 0;
	background-color: var(--wp--preset--color--scena);
	background-image:
		linear-gradient(to right, rgba(23, 23, 23, 0.045) 1px, transparent 1px),
		linear-gradient(to bottom, rgba(23, 23, 23, 0.045) 1px, transparent 1px);
	background-size: 8px 8px;
}
.zbang-scena > .zbang-plansa {
	position: relative;
	margin: 0;
	aspect-ratio: 2800 / 606;
	border-radius: var(--wp--custom--radius--md);
	overflow: hidden;
	background: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
}
.zbang-plansa__photo,
.zbang-plansa__photo img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.zbang-plansa__text {
	position: absolute;
	top: 21.4%;
	left: 14.4%;
	max-width: 13.2em;
	font-size: var(--wp--preset--font-size--hero);
}
.zbang-plansa__title {
	margin: 0;
	font-family: var(--wp--preset--font-family--body);
	font-size: 1em;
	font-weight: 700;
	line-height: 1.08;
	letter-spacing: 0;
	color: var(--wp--preset--color--white);
}
.zbang-plansa__cta.wp-element-button {
	display: flex;
	width: fit-content;
	font-family: var(--wp--preset--font-family--body);
	align-items: center;
	justify-content: center;
	height: 50px;
	margin-top: 8px;
	padding: 0 20px;
	background: var(--wp--preset--color--red);
	color: var(--wp--preset--color--white);
	border-radius: var(--wp--custom--radius--card);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 600;
	text-decoration: none;
}
.zbang-plansa__alt {
	display: inline-block;
	margin-top: 10px;
	padding: 6px 0;
	color: var(--wp--preset--color--white);
	font-size: var(--wp--preset--font-size--info);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 4px;
	text-shadow: 0 1px 2px rgba(23, 23, 23, 0.6);
}
.zbang-plansa__alt:hover {
	text-decoration-thickness: 2px;
}
.zbang-listing-head__guide {
	margin-top: 6px;
}
#zbang-ghiduri {
	scroll-margin-top: 24px;
}
.zbang-plansa__dim {
	position: absolute;
	top: 50%;
	right: 39.9%;
	transform: translateY(-50%);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 400;
	line-height: 1;
	color: var(--wp--preset--color--white);
}

/* ---------- Categoriile desenate ---------- */
.zbang-home > .zbang-plansa-cats {
	max-width: none !important;
	margin: 11px 0 0 !important;
}
/* Legenda balonașelor: pozițiile de pe desen, ca într-o listă de piese */
.zbang-plansa__legenda {
	position: absolute;
	right: 16px;
	bottom: 14px;
	display: flex;
	align-items: center;
	gap: 6px;
	margin: 0;
	padding: 5px 10px 5px 4px;
	/* fundal închis: textul mic rămâne lizibil și peste praful luminat */
	background: rgba(12, 10, 8, 0.72);
	border-radius: var(--wp--custom--radius--control);
	font-size: var(--wp--preset--font-size--info);
	font-weight: 500;
	color: var(--wp--preset--color--white);
}
.zbang-plansa__poz {
	display: inline-grid;
	place-items: center;
	width: 18px;
	height: 18px;
	margin-left: 8px;
	border: 1px solid currentColor;
	border-radius: 50%;
	font-size: var(--wp--preset--font-size--caption);
	line-height: 1;
}
.zbang-plansa-cats ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--wp--preset--spacing--3);
	margin: 0;
	padding: 0;
	list-style: none;
}
.zbang-plansa-cat {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	box-sizing: border-box;
	width: 152px;
	height: 133px;
	padding: 5px 10px 0;
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--linie);
	border-radius: var(--wp--custom--radius--card);
	color: var(--wp--preset--color--black);
	text-decoration: none;
	transition: border-color 0.15s ease;
}
.zbang-plansa-cat:hover {
	border-color: var(--wp--preset--color--black);
}
.zbang-plansa-cat__art {
	display: block;
	box-sizing: border-box;
	width: 131px;
	height: 84px;
	object-fit: contain;
}
/* Portavocea stă mai jos și spre dreapta, ca să lase loc insignei Promoții (cutia din comp) */
.zbang-plansa-cat.is-sale .zbang-plansa-cat__art {
	width: 117px;
	height: 54px;
	padding: 0;
	margin: 32px 0 0 14px;
	object-position: center;
}
.zbang-plansa-cat__name {
	margin-top: auto;
	margin-bottom: 11px;
	font-size: var(--wp--preset--font-size--body);
	font-weight: 400 !important;
	color: var(--wp--preset--color--black);
	line-height: 1.2;
	text-align: center;
}
.zbang-plansa-cat__badge {
	position: absolute;
	top: -1px;
	left: 0;
	box-sizing: border-box;
	width: 77px;
	height: 30px;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--wp--preset--color--red);
	color: var(--wp--preset--color--white);
	border-radius: var(--wp--custom--radius--card);
	font-size: var(--wp--preset--font-size--caption);
	font-weight: 600;
	line-height: 1.2;
}

/* ---------- Rândurile de produse de pe prima pagină: carduri orizontale, cu balonașe ---------- */
.zbang-home > .zbang-collection.is-home {
	max-width: 1136px;
}
.zbang-home .zbang-section__title {
	margin-top: 31px;
	font-size: var(--wp--preset--font-size--title);
	font-weight: 700;
	letter-spacing: 0;
}
.zbang-home .zbang-collection.is-home .zbang-pcards {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--3) !important;
	counter-reset: zbang-poz;
}
.zbang-home .zbang-collection.is-home .zbang-pcards > li {
	width: auto !important;
	margin: 0 !important;
}
.zbang-home .zbang-collection.is-home .zbang-pc {
	display: grid !important;
	grid-template-columns: 46% minmax(0, 1fr);
	grid-template-rows: auto auto 1fr auto auto;
	column-gap: 16px;
	padding: 10px;
	border: 1px solid var(--wp--preset--color--linie);
	border-radius: var(--wp--custom--radius--card);
	counter-increment: zbang-poz;
}
.zbang-home .zbang-collection.is-home .zbang-pc > * {
	grid-column: 2;
}
.zbang-home .zbang-collection.is-home .zbang-pc__media {
	grid-column: 1;
	grid-row: 1 / -1;
	align-self: stretch;
	justify-self: stretch;
	box-sizing: border-box;
	width: auto !important;
	aspect-ratio: auto;
	min-height: 120px;
	margin: 0 !important;
	border: 0;
}
.zbang-home .zbang-collection.is-home .zbang-pc__media > a,
.zbang-home .zbang-collection.is-home .zbang-pc__media .wc-block-components-product-image {
	padding: 0;
}
/* Poza umple coloana (ca în comp), nu stă ca miniatură în mijloc */
.zbang-home .zbang-collection.is-home .zbang-pc__media img {
	width: 100% !important;
	height: 100% !important;
	max-height: none !important;
	object-fit: contain !important;
}
/* Prețul și butonul stau jos, pe aceeași linie în tot rândul */
.zbang-home .zbang-collection.is-home .zbang-pc__name a {
	display: inline !important;
}
.zbang-home .zbang-collection.is-home .zbang-pc__price {
	grid-row: 4;
	align-self: end;
}
.zbang-home .zbang-collection.is-home .zbang-pc__cta {
	grid-row: 5;
}
/* Pe primul card, balonașul coboară cu o linie de indicație în poză, ca în comp */
.zbang-home .zbang-collection.is-promo .zbang-pcards > li:first-child .zbang-pc__media::after {
	content: "1";
	position: absolute;
	top: 12%;
	left: 50%;
	z-index: 1;
	display: grid;
	place-items: center;
	width: 18px;
	height: 18px;
	border: 1px solid var(--wp--preset--color--otel);
	border-radius: 50%;
	background: var(--wp--preset--color--white);
	font-size: var(--wp--preset--font-size--caption);
	line-height: 1;
}
.zbang-home .zbang-collection.is-promo .zbang-pcards > li:first-child .zbang-pc__media::before {
	content: "";
	position: absolute;
	top: calc(12% + 18px);
	left: calc(50% + 4px);
	z-index: 1;
	width: 1px;
	height: 22%;
	background: var(--wp--preset--color--otel);
	transform: rotate(-20deg);
	transform-origin: top center;
}
.zbang-home .zbang-collection.is-home .zbang-pc__rating {
	display: none;
}
.zbang-home .zbang-collection.is-home .zbang-pc__sku {
	position: relative;
	justify-self: start;
	margin: 6px 0 0 !important;
	padding: 0 8px;
	border-radius: 999px;
	font-size: var(--wp--preset--font-size--caption);
}
/* Balonașul de poziție: cercul numerotat, legat de eticheta de cod printr-o linie scurtă */
.zbang-home .zbang-collection.is-home .zbang-pc__sku::after {
	content: counter(zbang-poz);
	position: absolute;
	top: -12px;
	right: -30px;
	display: grid;
	place-items: center;
	width: 20px;
	height: 20px;
	border: 1px solid var(--wp--preset--color--otel);
	border-radius: 50%;
	background: var(--wp--preset--color--white);
	font-family: var(--wp--preset--font-family--body);
	font-size: 13px;
	font-weight: 500;
	line-height: 1;
}
.zbang-home .zbang-collection.is-home .zbang-pc__sku::before {
	content: "";
	position: absolute;
	top: 2px;
	right: -12px;
	width: 14px;
	border-top: 1px solid var(--wp--preset--color--otel);
	transform: rotate(-35deg);
	transform-origin: left center;
}
.zbang-home .zbang-collection.is-home .zbang-pc__name {
	display: -webkit-box !important;
	min-height: 0;
	margin: 8px 0 6px !important;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	min-height: calc(3 * 1.3em);
	font-size: var(--wp--preset--font-size--ui) !important;
	font-weight: 500 !important;
}
.zbang-home .zbang-collection.is-home .zbang-pc__price {
	margin-bottom: 8px !important;
	font-size: var(--wp--preset--font-size--body);
}
.zbang-home .zbang-collection.is-home .zbang-pc__price del {
	display: none;
}
.zbang-home .zbang-collection.is-home .zbang-pc__price ins {
	order: -1;
}
.zbang-home .zbang-collection.is-home .zbang-pc__price .wc-block-components-product-price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
}
/* Omnibus: obligatoriu la o promoție; stă jos, pe toată lățimea cardului, sub buton */
.zbang-home .zbang-collection.is-home .zbang-pc:has(.zbang-omnibus) {
	padding-bottom: 46px;
}
.zbang-home .zbang-collection.is-home .zbang-pc__price .zbang-omnibus {
	position: absolute;
	right: 10px;
	bottom: 8px;
	left: 10px;
	font-size: var(--wp--preset--font-size--info);
	line-height: 1.3;
}
.zbang-home .zbang-collection.is-home .zbang-pc__stock,
.zbang-home .zbang-collection.is-home .wc-block-components-product-sale-badge {
	display: none !important;
}
.zbang-home .zbang-collection.is-home .zbang-pc__cta {
	justify-self: start;
	width: auto;
}
.zbang-home .zbang-collection.is-home .zbang-pc__cta .wp-element-button,
.zbang-home .zbang-collection.is-home .zbang-pc__cta .wp-block-button__link {
	width: auto;
	min-height: 44px;
	padding: 6px 12px;
	border-radius: var(--wp--custom--radius--card);
	font-size: 14px;
	font-weight: 500;
	white-space: nowrap;
}
.zbang-home .zbang-collection.is-home .zbang-fav {
	/* copil absolut al unei grile: ia celula ca referință, deci îl legăm de celula pozei */
	grid-column: 1 !important;
	grid-row: 1 !important;
	position: absolute !important;
	top: 6px !important;
	right: auto !important;
	left: 6px !important;
	transform: scale(0.8);
	transform-origin: top left;
}

/* ---------- Secțiunile de sub primul ecran ---------- */
.zbang-home .zbang-section__more {
	font-size: 14px;
	font-weight: 500;
	text-underline-offset: 4px;
}

/* Argumentele (din opțiunea zbang_trust_items): un cartuș cu trei căsuțe și balonașe */
.zbang-home > .zbang-trust {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	max-width: 1136px;
	margin-top: var(--wp--preset--spacing--5) !important;
	padding: 0;
	list-style: none;
	border: 1px solid var(--wp--preset--color--linie);
	border-radius: var(--wp--custom--radius--card);
	background: var(--wp--preset--color--white);
}
.zbang-home > .zbang-trust li {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0;
	padding: 14px 18px;
	background: transparent;
	border: 0;
	border-left: 1px solid var(--wp--preset--color--linie);
	font-size: var(--wp--preset--font-size--ui);
	font-weight: 500;
}
.zbang-home > .zbang-trust li:first-child {
	border-left: 0;
}


/* Branduri: banda Grafit, cu numele mari și numărul de produse pe o linie de cotă */
.zbang-home > .zbang-section:has(#zbang-branduri) {
	max-width: none !important;
	margin: var(--wp--preset--spacing--6) calc(var(--zbang-gutter) - var(--wp--style--root--padding-right, 0px)) 0 calc(var(--zbang-gutter) - var(--wp--style--root--padding-left, 0px)) !important;
	padding: 48px max(24px, calc((100% - 992px) / 2));
	background: var(--wp--preset--color--black);
	border-radius: var(--wp--custom--radius--md);
	color: var(--wp--preset--color--white);
}
.zbang-home #zbang-branduri {
	margin: 0 0 28px;
	color: var(--wp--preset--color--white);
}
.zbang-home .zbang-brands {
	display: flex;
	flex-wrap: wrap;
	gap: 24px 64px;
}
.zbang-home .zbang-brand {
	display: inline-flex;
	flex-direction: column;
	gap: 10px;
	padding: 0;
	background: transparent;
	border: 0;
	color: var(--wp--preset--color--white);
	text-decoration: none;
}
.zbang-home .zbang-brand__name {
	font-size: var(--wp--preset--font-size--brand);
	font-weight: 800;
	line-height: 1;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--white);
}
.zbang-home .zbang-brand img {
	height: 72px;
	width: auto;
	filter: brightness(0) invert(1);
}
.zbang-home .zbang-brand:hover img {
	opacity: 0.8;
}
.zbang-home .zbang-brand__count {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: var(--wp--preset--font-size--caption);
	color: var(--wp--preset--color--white);
	opacity: 0.8;
}
.zbang-home .zbang-brand__count::before,
.zbang-home .zbang-brand__count::after {
	content: "";
	flex: 1;
	min-width: 16px;
	height: 8px;
	border-top: 1px solid currentColor;
	transform: translateY(4px);
}
.zbang-home .zbang-brand__count::before {
	border-left: 1px solid currentColor;
}
.zbang-home .zbang-brand__count::after {
	border-right: 1px solid currentColor;
}
.zbang-home .zbang-brand:hover .zbang-brand__name {
	text-decoration: underline;
	text-decoration-thickness: 3px;
	text-underline-offset: 8px;
}

/* Sigla brandului în capul listării: monocromă, în Grafit, pe scenă */
.zbang-listing-head__logo {
	width: auto;
	height: auto;
	max-height: 96px;
	max-width: 45%;
	min-width: 0;
	filter: brightness(0);
	opacity: 0.9;
}

/* Ghidurile: fișe cu poza într-un cadru fin, pe grila de 1136 px */
.zbang-home > .zbang-posts {
	max-width: 1136px;
	gap: var(--wp--preset--spacing--4);
}
.zbang-home .zbang-post__media {
	display: block;
	aspect-ratio: 16 / 10;
	border: 1px solid var(--wp--preset--color--linie);
	border-radius: var(--wp--custom--radius--card);
	overflow: hidden;
	background: var(--wp--preset--color--white);
}
.zbang-home .zbang-post__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* ---------- Tabletă: antetul pe două rânduri, cardurile câte două ---------- */
@media (max-width: 1100px) {
	.zbang-home .zbang-collection.is-home .zbang-pcards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	/* Plăcile devin fluide: șase coloane cât încap, apoi trei */
	.zbang-plansa-cats ul {
		display: grid;
		grid-template-columns: repeat(6, minmax(0, 1fr));
		max-width: 992px;
		margin: 0 auto;
	}
	.zbang-plansa-cat {
		width: auto;
	}
	.zbang-plansa-cat__art {
		width: 100%;
	}
}
@media (min-width: 601px) and (max-width: 820px) {
	.zbang-plansa-cats ul {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
@media (min-width: 601px) and (max-width: 900px) {
	.zbang-header > .zbang-header__top {
		grid-template-columns: auto 1fr;
		grid-template-areas: "logo actions" "search search";
		row-gap: 8px;
	}
	.zbang-header__top .zbang-logo {
		grid-area: logo;
	}
	.zbang-header__top .zbang-header__actions {
		grid-area: actions;
	}
	.zbang-header__top .zbang-search {
		grid-area: search;
	}
	.zbang-scena > .zbang-plansa {
		aspect-ratio: 2800 / 900;
	}
	.zbang-plansa__text {
		top: 16%;
		left: 5%;
	}
	.zbang-plansa__title {
		font-size: 36px;
	}
	.zbang-plansa__legenda {
		display: none;
	}
}
/* Căutarea din antet apare și pe prima pagină: capul paginii nu mai are o căutare proprie */
@media (max-width: 900px) {
	.home .zbang-header .zbang-search {
		display: block;
	}
}

/* ---------- Telefon ---------- */
@media (max-width: 600px) {
	.zbang-site-header .zbang-header {
		padding: 6px 12px 12px !important;
		background: var(--wp--preset--color--black) !important;
		color: var(--wp--preset--color--white);
		box-shadow: none;
	}
	.zbang-header .zbang-search .wp-block-search__inside-wrapper {
		box-sizing: border-box;
		height: 44px;
		padding: 4px;
		background: var(--wp--preset--color--white);
		border-radius: var(--wp--custom--radius--card);
	}
	.zbang-header .zbang-search .wp-block-search__button {
		border-radius: var(--wp--custom--radius--control);
		background: var(--wp--preset--color--red);
		font-weight: 600;
	}
	.zbang-header .zbang-header__actions a,
	.zbang-header .zbang-header__actions .wc-block-mini-cart__button,
	.zbang-header .wc-block-customer-account__visual,
	.zbang-header .wc-block-mini-cart__icon,
	.zbang-header .zbang-cats .wp-block-navigation__responsive-container-open {
		color: var(--wp--preset--color--white);
		fill: currentColor;
	}
	.zbang-header .zbang-logo img {
		height: 32px;
	}
	.zbang-home > .zbang-scena {
		padding: 8px 8px 0;
	}
	.zbang-scena > .zbang-plansa {
		aspect-ratio: 5 / 4;
	}
	/* „zbang!” rămâne și pe telefon, lângă linia de cotă din decupajul 5:4 */
	.zbang-plansa__dim {
		display: block !important;
		top: 38.5%;
		right: calc(52.9% + 8px);
		font-size: 14px;
	}
	.zbang-plansa__legenda {
		display: none;
	}
	.zbang-plansa__text {
		top: auto;
		right: 16px;
		bottom: 18px;
		left: 16px;
	}
	.zbang-plansa__title {
		font-size: 30px;
		line-height: 1.1;
	}
	.zbang-plansa__cta.wp-element-button {
		height: 46px;
		margin-top: 12px;
	}

	.zbang-plansa-cats ul {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 8px;
	}
	.zbang-plansa-cat {
		width: auto;
		height: 104px;
		padding: 4px 4px 0;
	}
	.zbang-plansa-cat__art {
		width: 100%;
		height: 58px;
	}
	.zbang-plansa-cat.is-sale .zbang-plansa-cat__art {
		width: 100%;
		height: 44px;
		margin: 18px 0 0;
		object-position: center;
	}
	.zbang-plansa-cat__name {
		margin-bottom: 8px;
		font-size: 14px;
	}
	.zbang-plansa-cat__badge {
		width: auto;
		height: 24px;
		padding: 0 6px;
		font-size: 13px;
	}
	/* Rândurile de produse: un rând orizontal cu derulare, cardul următor se vede pe margine */
	.zbang-home .zbang-collection.is-home .zbang-pcards {
		grid-template-columns: none;
		grid-auto-flow: column;
		grid-auto-columns: 86%;
		margin-inline: -16px !important;
		padding: 14px 16px 8px !important;
		overflow-x: auto;
		overscroll-behavior-x: contain;
		scroll-snap-type: x mandatory;
		scroll-padding-inline: 16px;
		scrollbar-width: none;
	}
	.zbang-home .zbang-collection.is-home .zbang-pcards > li {
		scroll-snap-align: start;
	}
	.zbang-home > .zbang-trust li {
		border-left: 0;
		border-top: 1px solid var(--wp--preset--color--linie);
	}
	.zbang-home > .zbang-trust li:first-child {
		border-top: 0;
	}
	.zbang-home > .zbang-section:has(#zbang-branduri) {
		margin-inline: calc(8px - var(--wp--style--root--padding-right, 0px)) calc(8px - var(--wp--style--root--padding-left, 0px)) !important;
		padding: 32px 20px;
	}
}

/* ---------- Mișcarea: lovitura („zbang”), o singură dată, la încărcare ---------- */
@media (prefers-reduced-motion: no-preference) {
	.zbang-plansa__photo img {
		animation: zbang-impact 0.32s cubic-bezier(0.16, 1, 0.3, 1) 0.35s 1 both;
	}
	.zbang-plansa__dim {
		animation: zbang-sunet 0.6s cubic-bezier(0.16, 1, 0.3, 1) 0.4s 1 both;
		transform-origin: right center;
	}
	.zbang-plansa-cat__art {
		transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1);
	}
	.zbang-plansa-cat:hover .zbang-plansa-cat__art {
		transform: translateY(-3px);
	}
}
@keyframes zbang-impact {
	0% { transform: translateY(0); }
	35% { transform: translateY(3px); }
	100% { transform: translateY(0); }
}
@keyframes zbang-sunet {
	0% { transform: translateY(-50%) scale(1); }
	30% { transform: translateY(-50%) scale(1.35) rotate(-4deg); }
	100% { transform: translateY(-50%) scale(1); }
}

/* ---------- Componentele comune ale Planșei (tot site-ul) ---------- */
/* Eticheta de cod: pastilă, ca pe prima pagină */
.zbang-code,
.zbang-pc__sku,
.zbang-pdp__meta .wc-block-components-product-sku {
	padding: 0 9px;
	border-radius: 999px;
}
/* Cardul de produs din listări: linie fină, colțuri de card */
.zbang-pc {
	border: 1px solid var(--wp--preset--color--linie);
	border-radius: var(--wp--custom--radius--card);
}
.zbang-pc__media {
	border-color: var(--wp--preset--color--linie);
	border-radius: var(--wp--custom--radius--control);
}
.zbang-pc__name {
	font-weight: 500;
}
.zbang-pc__cta .wp-element-button,
.zbang-pc__cta .wp-block-button__link {
	border-radius: var(--wp--custom--radius--card);
	font-weight: 600;
}
/* Titlurile de secțiune: mărimea „title” de pe prima pagină */
.zbang-section__title {
	font-size: var(--wp--preset--font-size--title);
	font-weight: 700;
	letter-spacing: 0;
}
/* Câmpurile și notificările: colțuri de control / card */
:where(input[type="text"], input[type="email"], input[type="search"], input[type="tel"], input[type="number"], input[type="password"], select, textarea) {
	border-radius: var(--wp--custom--radius--control);
}
.wc-block-components-notice-banner {
	border-radius: var(--wp--custom--radius--card);
}

/* Subsolul: logo-ul la o mărime de semnătură, nu de afiș */
.zbang-footer__brand img {
	width: auto;
	height: 96px;
}
@media (max-width: 900px) {
	.zbang-footer__brand img {
		height: 72px;
	}
}

/* ---------- Listările (4.1): capul pe scenă, filtrele ca listă de piese, fișa comparativă ---------- */
.zbang-archive {
	padding-top: 0 !important;
}
.zbang-archive > .zbang-scena--listare {
	max-width: none !important;
	margin: 0 calc(-1 * var(--wp--style--root--padding-right, 0px)) var(--wp--preset--spacing--4) calc(-1 * var(--wp--style--root--padding-left, 0px)) !important;
	/* % din padding se raportează la părinte, care nu include padding-ul global; îl adunăm înapoi */
	padding: 18px max(var(--wp--style--root--padding-left, var(--zbang-gutter)), calc((100% + var(--wp--style--root--padding-left, 0px) + var(--wp--style--root--padding-right, 0px) - 1320px) / 2)) 22px;
	background-color: var(--wp--preset--color--scena);
	background-image:
		linear-gradient(to right, rgba(23, 23, 23, 0.045) 1px, transparent 1px),
		linear-gradient(to bottom, rgba(23, 23, 23, 0.045) 1px, transparent 1px);
	background-size: 8px 8px;
	border-bottom: 1px solid var(--wp--preset--color--linie);
}
.zbang-listing-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--4);
	margin-top: 10px;
}
.zbang-listing-head__title {
	margin: 0;
	font-size: var(--wp--preset--font-size--h-2);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -0.015em;
}
.zbang-listing-head__count {
	margin: 6px 0 0;
	font-size: var(--wp--preset--font-size--ui);
	color: var(--wp--preset--color--otel);
}
.zbang-listing-head__art {
	flex: none;
	width: auto !important;
	height: 150px !important;
	max-width: 240px;
	object-fit: contain;
	mix-blend-mode: multiply;
}
.zbang-vedere {
	display: inline-flex;
	margin-top: 14px;
	padding: 3px;
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--linie);
	border-radius: 999px;
}
.zbang-vedere a {
	padding: 6px 14px;
	border-radius: 999px;
	font-size: var(--wp--preset--font-size--info);
	font-weight: 500;
	color: var(--wp--preset--color--black);
	text-decoration: none;
}
.zbang-vedere a[aria-current="page"] {
	background: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
}

/* Filtrele: titluri cu linie fină dedesubt, ca rubricile unei liste de piese */
.zbang-listing__filters .zbang-filter__title {
	margin: 0 0 10px !important;
	padding-bottom: 8px;
	border-bottom: 1px solid var(--wp--preset--color--linie);
	font-size: var(--wp--preset--font-size--ui);
	font-weight: 700;
}

/* Cardurile din listări: codul cu balonaș numerotat, ca pe prima pagină */
.zbang-listing .zbang-pcards {
	counter-reset: zbang-poz;
}
.zbang-listing .zbang-pc {
	counter-increment: zbang-poz;
}
.zbang-listing .zbang-pc__sku {
	position: relative;
	margin-top: 4px !important;
	margin-right: 30px !important;
}
.zbang-listing .zbang-pc__sku::after {
	content: counter(zbang-poz);
	position: absolute;
	top: -12px;
	right: -30px;
	display: grid;
	place-items: center;
	width: 20px;
	height: 20px;
	border: 1px solid var(--wp--preset--color--otel);
	border-radius: 50%;
	background: var(--wp--preset--color--white);
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--caption);
	line-height: 1;
}
.zbang-listing .zbang-pc__sku::before {
	content: "";
	position: absolute;
	top: 2px;
	right: -12px;
	width: 14px;
	border-top: 1px solid var(--wp--preset--color--otel);
	transform: rotate(-35deg);
	transform-origin: left center;
}

/* Fișa comparativă: produsele pe coloane, specificațiile pe rânduri */
.zbang-fisa__note {
	margin: 0 0 12px;
	font-size: var(--wp--preset--font-size--caption);
	color: var(--wp--preset--color--otel);
}
.zbang-fisa {
	overflow-x: auto;
	border: 1px solid var(--wp--preset--color--linie);
	border-radius: var(--wp--custom--radius--card);
}
.zbang-fisa table {
	width: 100%;
	min-width: 720px;
	border-collapse: collapse;
	font-size: var(--wp--preset--font-size--ui);
}
.zbang-fisa th,
.zbang-fisa td {
	padding: 10px 12px;
	border-bottom: 1px solid var(--wp--preset--color--linie);
	border-left: 1px solid var(--wp--preset--color--linie);
	text-align: center;
	vertical-align: middle;
}
.zbang-fisa tr > :first-child {
	border-left: 0;
	width: 140px;
	text-align: left;
}
.zbang-fisa tbody th {
	font-size: var(--wp--preset--font-size--info);
	font-weight: 600;
	color: var(--wp--preset--color--otel);
}
.zbang-fisa tbody tr:last-child > * {
	border-bottom: 0;
}
.zbang-fisa__prod {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	color: var(--wp--preset--color--black);
	text-decoration: none;
}
.zbang-fisa__media {
	position: relative;
	display: block;
	width: 120px;
	height: 120px;
}
.zbang-fisa__media img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.zbang-fisa__poz {
	position: absolute;
	top: 0;
	right: -8px;
	display: grid;
	place-items: center;
	width: 20px;
	height: 20px;
	border: 1px solid var(--wp--preset--color--otel);
	border-radius: 50%;
	background: var(--wp--preset--color--white);
	font-size: var(--wp--preset--font-size--caption);
	font-weight: 500;
}
.zbang-fisa__name {
	font-size: var(--wp--preset--font-size--info);
	font-weight: 600;
	line-height: 1.3;
}
.zbang-fisa__price {
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 700;
	color: var(--wp--preset--color--red);
}
.zbang-fisa__price del,
.zbang-fisa__price .zbang-omnibus {
	display: block;
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--info);
	font-weight: 400;
	color: var(--wp--preset--color--gray-dark);
}
.zbang-fisa__price ins {
	text-decoration: none;
}
.zbang-fisa .zbang-fisa__cta {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 6px 12px;
	border-radius: var(--wp--custom--radius--card);
	font-size: var(--wp--preset--font-size--info);
	white-space: nowrap;
}
@media (max-width: 600px) {
	.zbang-listing-head__art {
		display: none;
	}
	.zbang-listing-head__title {
		font-size: var(--wp--preset--font-size--headline-sm);
	}
}

/* ---------- Fișa de produs (4.2, „A simplă”): poza pe scenă, cumpărare compactă, bara de jos ---------- */
.zbang-pdp-page {
	padding-bottom: 96px !important;
}
.zbang-pdp {
	margin-top: 12px;
	background: transparent;
	border-radius: 0;
	overflow: visible;
	gap: var(--wp--preset--spacing--5) !important;
}
.zbang-pdp__stage {
	padding: 32px;
	background-color: var(--wp--preset--color--scena);
	background-image:
		linear-gradient(to right, rgba(23, 23, 23, 0.045) 1px, transparent 1px),
		linear-gradient(to bottom, rgba(23, 23, 23, 0.045) 1px, transparent 1px);
	background-size: 8px 8px;
	border-radius: var(--wp--custom--radius--md);
}
.zbang-pdp__stage .woocommerce-product-gallery__image > a {
	border: 1px solid var(--wp--preset--color--linie);
	border-radius: var(--wp--custom--radius--card);
}
.zbang-pdp__stage .flex-control-thumbs li {
	border: 1px solid var(--wp--preset--color--linie);
	border-radius: var(--wp--custom--radius--control);
	overflow: hidden;
}
.zbang-pdp__sheet {
	padding: 4px 0 0 !important;
	background: transparent;
	font-weight: 400;
}
.zbang-pdp__title {
	margin: 4px 0 0 !important;
	font-size: var(--wp--preset--font-size--product-title) !important;
	font-weight: 800;
	line-height: 1.12;
}
.zbang-pdp__price {
	font-size: var(--wp--preset--font-size--price-product) !important;
}
.zbang-facts {
	gap: 0;
	margin-top: 4px;
	border-top: 1px solid var(--wp--preset--color--linie);
}
.zbang-facts div {
	padding: 8px 0;
	border-bottom: 1px solid var(--wp--preset--color--linie);
}
.zbang-pdp__buy form.cart {
	flex-wrap: nowrap;
}
.zbang-pdp__buy .single_add_to_cart_button {
	flex: 1;
	min-height: 48px;
	border-radius: var(--wp--custom--radius--card) !important;
}
/* Pasul de cantitate (− 1 +), creat de site.js în jurul câmpului WooCommerce */
.zbang-qty {
	display: inline-flex;
	align-items: stretch;
	flex: none;
	border: 1px solid var(--wp--preset--color--otel);
	border-radius: var(--wp--custom--radius--card);
	background: var(--wp--preset--color--white);
}
.zbang-qty__btn {
	width: 44px;
	min-height: 46px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--wp--preset--color--black);
	font-size: 20px;
	cursor: pointer;
}
.zbang-qty__btn:hover {
	background: var(--wp--preset--color--gray-light);
}
.zbang-pdp__buy .zbang-qty input.qty {
	width: 44px !important;
	min-height: 46px;
	height: auto;
	border: 0 !important;
	border-radius: 0;
	-moz-appearance: textfield;
}
.zbang-qty input::-webkit-inner-spin-button,
.zbang-qty input::-webkit-outer-spin-button {
	-webkit-appearance: none;
}

/* Bara de cumpărare: Grafit, jos, cât butonul principal nu se vede (pe telefon, din primul ecran) */
.zbang-buybar,
.zbang-pdp-page > .zbang-buybar {
	position: fixed;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 20;
	max-width: none !important;
	margin: 0 !important;
	background: var(--wp--preset--color--black);
	/* o linie, nu o umbră: bara se desparte și de subsolul Grafit */
	border-top: 1px solid rgba(255, 255, 255, 0.22);
	color: var(--wp--preset--color--white);
}
.zbang-buybar[hidden] {
	display: none;
}
.zbang-buybar__inner {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--4);
	max-width: 1320px;
	margin: 0 auto;
	padding: 10px var(--zbang-gutter);
}
.zbang-buybar__name {
	flex: 1;
	min-width: 0;
	margin: 0;
	overflow: hidden;
	font-size: var(--wp--preset--font-size--body);
	font-weight: 500;
	white-space: nowrap;
	text-overflow: ellipsis;
}
.zbang-buybar__price {
	margin: 0;
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--title);
	font-weight: 700;
	color: var(--wp--preset--color--white);
}
.zbang-buybar__cta.wp-element-button {
	min-height: 44px;
	padding: 8px 18px;
	border-radius: var(--wp--custom--radius--card);
}
@media (prefers-reduced-motion: no-preference) {
	.zbang-buybar:not([hidden]) {
		animation: zbang-buybar-in 0.25s cubic-bezier(0.16, 1, 0.3, 1) both;
	}
}
@keyframes zbang-buybar-in {
	from { transform: translateY(100%); }
	to { transform: translateY(0); }
}
@media (max-width: 781px) {
	.zbang-pdp__stage {
		padding: 16px;
	}
	.zbang-pdp__sheet {
		padding-top: var(--wp--preset--spacing--3) !important;
	}
}
@media (max-width: 781px) {
	/* rândul de cumpărare: pasul de cantitate își ia lățimea lui, butonul restul */
	.zbang-pdp__buy form.cart {
		display: flex !important;
		flex-wrap: nowrap;
		gap: 8px;
	}
	.zbang-pdp__buy form.cart .single_add_to_cart_button {
		flex: 1 1 auto;
	}
	.zbang-pdp__buy form.cart .zbang-fav {
		flex: none;
		margin-left: 0 !important;
	}
}
@media (max-width: 600px) {
	.zbang-buybar__name {
		display: none;
	}
	.zbang-buybar__inner {
		justify-content: space-between;
	}
}

/* ---------- Coș, checkout, cont, pagini informative (4.3–4.7): structurile rămân, materialul e al Planșei ---------- */
/* Panourile Tablă devin panouri de scenă, cu linie fină (ca pe prima pagină) */
.zbang-order--checkout .wp-block-woocommerce-checkout-order-summary-block,
.zbang-account .woocommerce-Address,
.zbang-acc-block__empty,
.zbang-firm-form__seat,
.zbang-info-help {
	background: var(--wp--preset--color--scena) !important;
	border: 1px solid var(--wp--preset--color--linie);
	border-radius: var(--wp--custom--radius--card);
}
.zbang-account .woocommerce-MyAccount-navigation .is-active a,
.zbang-info-nav a[aria-current="page"] {
	background: var(--wp--preset--color--scena);
	box-shadow: inset 3px 0 0 var(--wp--preset--color--black);
}
/* Plăcile desenate în stările goale și pe 404: aliniate la stânga, cu textul */
.zbang-wayout .zbang-plansa-cats,
.zbang-404 .zbang-plansa-cats {
	margin: var(--wp--preset--spacing--4) 0;
}
.zbang-wayout .zbang-plansa-cats ul,
.zbang-404 .zbang-plansa-cats ul {
	justify-content: flex-start;
}
/* Căutarea din 404: câmp alb cu contur Grafit de 2px și buton roșu (ca în stările goale) */
.zbang-404 .zbang-search .wp-block-search__inside-wrapper {
	box-sizing: border-box;
	height: 48px;
	padding: 4px;
	background: var(--wp--preset--color--white);
	border: 2px solid var(--wp--preset--color--black);
	border-radius: var(--wp--custom--radius--card);
}
.zbang-404 .zbang-search .wp-block-search__button {
	background: var(--wp--preset--color--red);
	border-radius: var(--wp--custom--radius--control);
}
/* Capul paginilor (blog, cont, 404): aceeași scenă ca la listări, cu textul pe coloana paginii */
.zbang-blog,
.zbang-account,
.zbang-404 {
	padding-top: 0 !important;
}
main > .zbang-scena--pagina {
	--zbang-coloana: 1320px;
	max-width: none !important;
	margin: 0 calc(-1 * var(--wp--style--root--padding-right, 0px)) var(--wp--preset--spacing--4) calc(-1 * var(--wp--style--root--padding-left, 0px)) !important;
	padding: 18px max(var(--wp--style--root--padding-left, var(--zbang-gutter)), calc((100% + var(--wp--style--root--padding-left, 0px) + var(--wp--style--root--padding-right, 0px) - var(--zbang-coloana)) / 2)) 22px;
	background-color: var(--wp--preset--color--scena);
	background-image:
		linear-gradient(to right, rgba(23, 23, 23, 0.045) 1px, transparent 1px),
		linear-gradient(to bottom, rgba(23, 23, 23, 0.045) 1px, transparent 1px);
	background-size: 8px 8px;
	border-bottom: 1px solid var(--wp--preset--color--linie);
}
.zbang-404 > .zbang-scena--pagina {
	--zbang-coloana: 760px;
	padding-top: 40px;
	padding-bottom: 32px;
}
main > .zbang-scena--pagina > h1,
main > .zbang-scena--pagina .wp-block-post-title,
main > .zbang-scena--pagina .wp-block-query-title {
	margin: 10px 0 0 !important;
	font-weight: 800;
	letter-spacing: -0.01em;
}
main > .zbang-scena--pagina > *:not(h1) {
	margin-top: 8px;
}

/* Filtrul de preț: inelul de focus al temei și pe câmpurile și cursorul intervalului */
.wp-block-woocommerce-product-filter-price-slider input:focus-visible {
	outline: 2px solid var(--wp--preset--color--red) !important;
	outline-offset: 2px;
}

/* ---------- Iterația 3, adapt: ținte de atingere și telefonul ---------- */

/* Paginarea: ținte de 44 px, pagina curentă marcată (înainte, 9×20 px, fără stare) */
.wp-block-query-pagination {
	gap: 6px;
	margin-top: var(--wp--preset--spacing--4);
}
.wp-block-query-pagination-numbers {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}
.wp-block-query-pagination .page-numbers,
.wp-block-query-pagination-next,
.wp-block-query-pagination-previous {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
	padding: 0 12px;
	border: 1px solid var(--wp--preset--color--linie);
	border-radius: var(--wp--custom--radius--card);
	font-weight: 600;
	text-decoration: none;
	font-variant-numeric: tabular-nums;
}
.wp-block-query-pagination .page-numbers.current {
	background: var(--wp--preset--color--black);
	border-color: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
}
.wp-block-query-pagination .page-numbers.dots {
	border-color: transparent;
}
.wp-block-query-pagination a:hover {
	border-color: var(--wp--preset--color--black);
}

/* „Vezi toate” și legăturile din subsol: zona de atingere de 44 px, textul la fel */
.zbang-section__more {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
}
.zbang-site-footer li a {
	display: inline-block;
	min-width: 44px;
	padding-block: 10px;
}

/* Fișa comparativă: rubricile rămân lipite la glisare */
.zbang-fisa th[scope="row"],
.zbang-fisa thead tr > :first-child {
	position: sticky;
	left: 0;
	z-index: 1;
	background: var(--wp--preset--color--white);
	box-shadow: 1px 0 0 var(--wp--preset--color--linie);
}

@media (max-width: 600px) {
	/* Grupele: un rând glisant, nu 1,6 ecrane de plăcuțe înaintea produselor */
	.zbang-subcats {
		flex-wrap: nowrap;
		overflow-x: auto;
		margin-inline: calc(-1 * var(--zbang-gutter, 16px));
		padding: 2px var(--zbang-gutter, 16px) 10px;
		scroll-snap-type: x proximity;
		scrollbar-width: thin;
	}
	.zbang-subcat {
		flex: none;
		max-width: 70vw;
		scroll-snap-align: start;
	}
	/* Tab-urile fișei: un rând glisant, nu două rânduri rupte */
	.zbang-pdp__details .wc-tabs {
		flex-wrap: nowrap !important;
		overflow-x: auto;
		scrollbar-width: none;
	}
	.zbang-pdp__details .wc-tabs li {
		flex: none;
	}
	.zbang-pdp__details .wc-tabs li a {
		white-space: nowrap;
	}
	/* Cumpărarea pe un rând: pasul − 1 + după conținut, butonul cât rămâne, inima la capăt */
	.zbang-pdp__buy form.cart {
		grid-template-columns: auto minmax(0, 1fr) auto !important;
	}
	.zbang-pdp__buy .zbang-qty .zbang-qty__btn {
		width: 36px !important;
	}
	.zbang-pdp__buy .zbang-qty input.qty {
		width: 34px !important;
		min-width: 0 !important;
	}
	.zbang-pdp__buy form.cart .single_add_to_cart_button {
		white-space: nowrap;
		min-width: 0;
		padding-inline: 12px !important;
	}
}
.zbang-newsletter__consent input[type="checkbox"] {
	width: 24px;
	height: 24px;
	flex: none;
	accent-color: var(--wp--preset--color--red);
}
@media (min-width: 783px) {
	.zbang-header__actions .zbang-fav-link {
		min-height: 44px;
	}
}
/* Clearfix-ul WooCommerce de pe form.cart devine în flex un element gol plus un spațiu:
   pasul de cantitate stătea cu 12 px mai în dreapta decât restul coloanei. */
.zbang-pdp__buy form.cart::before,
.zbang-pdp__buy form.cart::after {
	display: none !important;
}
.zbang-pdp__buy form.cart {
	padding-left: 0 !important;
}
@media (max-width: 400px) {
	/* Sub 400 px, pe două rânduri: pasul și inima sus, butonul pe toată lățimea dedesubt */
	.zbang-pdp__buy form.cart {
		flex-wrap: wrap !important;
	}
	.zbang-pdp__buy form.cart .zbang-fav {
		margin-left: auto !important;
	}
	.zbang-pdp__buy form.cart .single_add_to_cart_button {
		order: 3;
		flex: 1 0 100%;
	}
}

/* ---------- Iterația 3, layout ---------- */

/* Navigația albă: pe lățimi medii lista glisează, deci nu se centrează peste marginea stângă */
/* Navigația albă: sub 900 px lista glisează; aliniată la stânga, cu gutter, ca primul element
   să nu iasă din ecran (centrarea o împingea la x < 0). */
@media (max-width: 900px) {
	.zbang-site-header .wp-block-navigation__container.zbang-cats {
		justify-content: flex-start !important;
		padding-inline: var(--zbang-gutter) !important;
	}
}

/* Prima pagină pe o singură coloană (1136, lățimea cardurilor și a ghidurilor): titlurile,
   plăcile, textul banner-ului și interiorul benzii Branduri pornesc de la aceeași muchie. */
.zbang-home {
	--zbang-home-col: 1136px;
	--zbang-home-edge: max(24px, calc((100% - var(--zbang-home-col)) / 2));
}
.zbang-home > .zbang-section__head,
.zbang-home > .zbang-collection.is-home,
.zbang-home > .zbang-posts {
	max-width: var(--zbang-home-col) !important;
}
.zbang-home > .zbang-plansa-cats {
	max-width: var(--zbang-home-col) !important;
	margin: var(--wp--preset--spacing--3) auto 0 !important;
}
.zbang-home > .zbang-plansa-cats ul {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
	gap: var(--wp--preset--spacing--3);
	max-width: none;
}
.zbang-home > .zbang-plansa-cats .zbang-plansa-cat {
	width: auto !important;
}
/* Banner-ul e o cutie de la gutter la gutter: 100% e lățimea lui, deci muchia e (100% − 1136) / 2 */
.zbang-home .zbang-scena > .zbang-plansa .zbang-plansa__text {
	left: max(24px, calc((100% - var(--zbang-home-col)) / 2));
}
/* Ritmul: 64 între secțiuni, 16 între titlu și rând */
.zbang-home .zbang-section__title {
	margin-top: var(--wp--preset--spacing--6);
}

/* Banner-ul: acțiunea principală și drumul „după treabă” pe același rând */
.zbang-plansa__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px var(--wp--preset--spacing--3);
	margin-top: 8px;
}
.zbang-plansa__actions .zbang-plansa__cta.wp-element-button {
	margin-top: 0;
}
.zbang-plansa__alt {
	margin-top: 0;
	padding: 13px 0;
}
@media (min-width: 601px) and (max-width: 1279px) {
	/* sub 1280, proporția fixă ar face banner-ul mai scund decât textul: înălțimea are un minim */
	.zbang-scena > .zbang-plansa {
		aspect-ratio: auto !important;
		height: max(260px, 21.64vw);
	}
}
@media (max-width: 600px) {
	/* pe telefon, eticheta de cotă ar cădea peste titlu */
	.zbang-home .zbang-plansa .zbang-plansa__dim {
		display: none !important;
	}
	/* plăcile: 3 sus, 2 jos, rânduri pline (grilă de 6, ultimele două pe câte 3) */
	.zbang-home > .zbang-plansa-cats ul {
		grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
		gap: 8px;
	}
	.zbang-home > .zbang-plansa-cats li {
		grid-column: span 2;
	}
	.zbang-home > .zbang-plansa-cats li:nth-child(4):nth-last-child(2),
	.zbang-home > .zbang-plansa-cats li:nth-child(5):last-child {
		grid-column: span 3;
	}
}

/* Cardul orizontal: 16 px între poză și text (gap:0 din zbang.css câștiga) */
.zbang-home .zbang-collection.is-home .zbang-pc {
	column-gap: var(--wp--preset--spacing--3) !important;
}

/* Banda Branduri: un rând, pe aceeași muchie, siglele la aceeași greutate */
.zbang-home > .zbang-section:has(#zbang-branduri) {
	/* banda începe la gutter; interiorul ajunge la muchia coloanei de 1136 */
	padding: var(--wp--preset--spacing--5) max(24px, calc((100vw - var(--zbang-home-col)) / 2 - var(--zbang-gutter))) !important;
}
.zbang-home .zbang-brands {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 24px 40px !important;
}
/* Fiecare siglă, centrată în coloana ei, într-o cutie de aceeași înălțime: liniile de cotă stau pe un rând */
.zbang-home .zbang-brand {
	align-items: center;
	text-align: center;
}
.zbang-home .zbang-brand img {
	width: 100% !important;
	max-width: 180px;
	height: 44px !important;
	object-fit: contain;
	object-position: center;
}
.zbang-home .zbang-brand--solid img {
	height: 34px !important;
	margin-block: 5px;
}
.zbang-home .zbang-brand__name {
	line-height: 44px !important;
}
.zbang-home .zbang-brand__name {
	font-size: var(--wp--preset--font-size--brand) !important;
}
.zbang-home .zbang-brand__count {
	width: 100%;
}

/* Ghidurile: două coloane pe tabletă, rând glisant pe telefon */
@media (min-width: 601px) and (max-width: 900px) {
	.zbang-home .zbang-posts {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}
@media (max-width: 600px) {
	.zbang-home .zbang-posts {
		display: grid !important;
		grid-auto-flow: column;
		grid-auto-columns: 86%;
		grid-template-columns: none !important;
		overflow-x: auto;
		scroll-snap-type: x proximity;
		gap: var(--wp--preset--spacing--3);
	}
	.zbang-home .zbang-posts > * {
		scroll-snap-align: start;
	}
}

/* Fișa de produs: breadcrumb deasupra coloanelor, conținutul la 40 px de linie */
.zbang-pdp-page > .zbang-pdp__crumbs {
	max-width: var(--wp--style--global--content-size) !important;
	margin: 0 auto var(--wp--preset--spacing--3) !important;
}
.zbang-pdp__sheet {
	padding: 4px 0 0 var(--wp--preset--spacing--5) !important;
}
@media (max-width: 781px) {
	.zbang-pdp__sheet {
		padding-left: 0 !important;
		border-left: 0 !important;
	}
}
/* Poza umple un cadru 4:3, ca sursa: suprafața ei se dublează, golul de sub cumpărare dispare */
.zbang-pdp__stage .woocommerce-product-gallery__image > a {
	aspect-ratio: 4 / 3 !important;
	padding: 4% !important;
}
.zbang-pdp__stage .woocommerce-product-gallery__image img {
	width: 100% !important;
}
@media (max-width: 600px) {
	.zbang-pdp__stage {
		padding: 8px !important;
	}
}
/* Faptele: valorile pe aceeași verticală */
.zbang-pdp .zbang-facts {
	grid-template-columns: minmax(7rem, max-content) 1fr;
	column-gap: var(--wp--preset--spacing--3);
}
.zbang-pdp .zbang-facts div {
	grid-column: 1 / -1;
	grid-template-columns: subgrid;
}
.zbang-pdp .zbang-facts dt {
	max-width: 12rem;
}
/* Livrare și retur, lângă buton */
.zbang-pdp__policy {
	display: flex;
	flex-wrap: wrap;
	gap: 0 var(--wp--preset--spacing--4);
	margin: -12px 0 0 !important; /* formularul lasă dedesubt spațiul lui: legăturile stau lipite de buton */
	font-size: var(--wp--preset--font-size--info);
}
.zbang-pdp__policy a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	color: var(--wp--preset--color--black);
	font-weight: 600;
}

/* Listări: poza în cadru 4:3 (ca sursa), fără chenar dublu */
.zbang-listing .zbang-pc__media {
	aspect-ratio: 4 / 3;
	border: 0 !important;
	background: var(--wp--preset--color--white);
}
.zbang-listing .zbang-pc__media img {
	max-width: 92% !important;
	max-height: 92% !important;
}

/* Grupele: glisante de la 1023 px în jos; fără miniatura rătăcită a unei singure grupe */
@media (max-width: 1023px) {
	.zbang-subcats {
		flex-wrap: nowrap;
		overflow-x: auto;
		scrollbar-width: thin;
	}
	.zbang-subcat {
		flex: none;
	}
}
.zbang-subcat__media {
	display: none;
}

/* Produse similare: câte sunt, fără gaură */
.zbang-pdp-page .zbang-collection .zbang-pcards {
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
}
.zbang-pdp-page .zbang-collection .zbang-pcards > li {
	max-width: 360px;
}

/* Breadcrumb: zonă de atingere de 44 px, textul la fel */
.woocommerce-breadcrumb a {
	display: inline-block;
	padding-block: 13px;
	margin-block: -13px;
}

/* ---------- Iterația 3, typeset ---------- */
/* Descrierea de pe fișă: rândul de lectură la ≈ 70 de caractere */
.zbang-pdp__details .woocommerce-Tabs-panel--description > :is(p, ul, ol) {
	max-width: 34em;
}
.zbang-pdp__details .woocommerce-Tabs-panel--description ul {
	padding-left: 1.2em;
}
.zbang-pdp__details .woocommerce-Tabs-panel--description li {
	margin: 2px 0;
}
/* Titlurile se echilibrează pe rânduri; paragrafele evită cuvântul singur pe ultimul rând */
:is(h1, h2, h3, .zbang-section__title, .zbang-post__title) {
	text-wrap: balance;
}
:is(.zbang-article, .zbang-info__body, .woocommerce-Tabs-panel) p {
	text-wrap: pretty;
}
/* Cifrele din prețuri și totaluri stau în coloane */
:is(.zbang-pdp__price, .zbang-buybar__price, .zbang-fisa__price, .zbang-pc__price, .wc-block-components-totals-item__value) {
	font-variant-numeric: tabular-nums;
}

/* ---------- Iterația 3, polish ---------- */
/* Promoțiile fără reduceri: fraza „Produsele de mai jos sunt reduse…” nu mai contrazice starea goală */
.wp-block-post-content:has(> .zbang-sale-empty) > p:not(.zbang-sale-empty) {
	display: none;
}
/* Pattern-urile care apar doar cu copy aprobat (zbang_promo_text, zbang_stat_label), în Planșă */
.zbang-home > .zbang-promo {
	display: flex;
	align-items: center;
	gap: 12px;
	max-width: var(--zbang-home-col) !important;
	margin-top: var(--wp--preset--spacing--6) !important;
	padding: 16px 20px;
	border: 1px solid var(--wp--preset--color--black);
	border-radius: var(--wp--custom--radius--card);
	background: var(--wp--preset--color--white);
	color: var(--wp--preset--color--black);
	font-weight: 600;
}
.zbang-home > .zbang-promo::before {
	content: "";
	flex: none;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--wp--preset--color--red);
}
.zbang-home > .zbang-stat {
	display: grid;
	justify-items: center;
	gap: 8px;
	max-width: var(--zbang-home-col) !important;
	margin-top: var(--wp--preset--spacing--6) !important;
	padding: 0;
	background: none;
	text-align: center;
}
.zbang-home > .zbang-stat .zbang-stat__num {
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--h-2);
	font-weight: 900;
	line-height: 1;
	font-variant-numeric: tabular-nums;
}
.zbang-home > .zbang-stat .zbang-stat__label {
	display: flex;
	align-items: center;
	gap: 10px;
	width: min(100%, 420px);
	font-size: var(--wp--preset--font-size--info);
	color: var(--wp--preset--color--otel);
}
.zbang-home > .zbang-stat .zbang-stat__label::before,
.zbang-home > .zbang-stat .zbang-stat__label::after {
	content: "";
	flex: 1;
	height: 8px;
	border-top: 1px solid currentColor;
	transform: translateY(4px);
}
.zbang-home > .zbang-stat .zbang-stat__label::before {
	border-left: 1px solid currentColor;
}
.zbang-home > .zbang-stat .zbang-stat__label::after {
	border-right: 1px solid currentColor;
}
/* Sortarea: inelul de focus al temei, nu al browserului */
select.orderby:focus-visible,
.wc-block-catalog-sorting select:focus-visible {
	outline: 2px solid var(--wp--preset--color--red);
	outline-offset: 2px;
}

/* ---------- Loader-ul „zbang!”: barosul care lovește, în locul spinner-elor ---------- */
/* Fișierele: assets/img/loader/. Cu mișcare redusă, desenul static (scânteile pulsează lent). */
:root {
	--zbang-loader: url(../img/loader/zbang-loader.svg);
	--zbang-loader-mini: url(../img/loader/zbang-loader-mini.svg);
}
@media (prefers-reduced-motion: reduce) {
	:root {
		--zbang-loader: url(../img/loader/zbang-loader-static.svg);
		--zbang-loader-mini: url(../img/loader/zbang-loader-mini-static.svg);
	}
}
/* Spinner-ul WooCommerce Blocks: în afara butoanelor, loader-ul complet */
.wc-block-components-spinner::after {
	display: none !important;
}
.wc-block-components-spinner {
	background: var(--zbang-loader) center / min(180px, 80%) auto no-repeat;
}
/* În butoane: varianta mică, în culoarea textului butonului */
:is(button, .wc-block-components-button, .wp-element-button) .wc-block-components-spinner {
	background: currentColor;
	-webkit-mask: var(--zbang-loader-mini) center / auto 70% no-repeat;
	mask: var(--zbang-loader-mini) center / auto 70% no-repeat;
}
/* Suprapunerea blockUI (paginile WooCommerce clasice) */
.blockUI.blockOverlay {
	background: rgba(247, 246, 249, 0.85) var(--zbang-loader) center / 120px auto no-repeat !important;
	opacity: 1 !important;
}
/* Lista de produse, cât se reîncarcă filtrele sau pagina: loader-ul sus, peste lista estompată.
   Apare după 150 ms, ca o reîncărcare rapidă să nu clipească. */
.zbang-listing__main {
	position: relative;
}
body:has(.wp-interactivity-router-loading-bar.start-animation) .zbang-listing__main::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 5;
	background: rgba(255, 255, 255, 0.82);
	animation: zbang-loader-in 0.2s 0.15s both;
}
/* loader-ul pe o plăcuță proprie, ca o fișă de desen: nu se amestecă cu pozele de dedesubt */
body:has(.wp-interactivity-router-loading-bar.start-animation) .zbang-listing__main::after {
	content: "";
	position: absolute;
	top: 72px;
	left: 50%;
	z-index: 6;
	width: min(280px, calc(100% - 32px));
	aspect-ratio: 160 / 148;
	transform: translateX(-50%);
	border: 1px solid var(--wp--preset--color--linie);
	border-radius: var(--wp--custom--radius--card);
	background: var(--wp--preset--color--white) var(--zbang-loader) center / 86% auto no-repeat;
	box-shadow: 0 16px 40px -24px rgba(23, 23, 23, 0.45);
	animation: zbang-loader-in 0.2s 0.15s both;
}
@keyframes zbang-loader-in {
	from { opacity: 0; }
	to { opacity: 1; }
}
.wp-interactivity-router-loading-bar {
	background: var(--wp--preset--color--red) !important;
}
/* „Adaugă în coș” pe fișă, cât formularul se trimite */
.zbang-pdp__buy .single_add_to_cart_button.is-busy,
.single_add_to_cart_button.wp-element-button.is-busy,
.zbang-buybar .is-busy {
	position: relative;
	color: transparent !important;
	pointer-events: none;
}
.zbang-pdp__buy .single_add_to_cart_button.is-busy::after,
.single_add_to_cart_button.wp-element-button.is-busy::after,
.zbang-buybar .is-busy::after {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--wp--preset--color--white);
	-webkit-mask: var(--zbang-loader-mini) center / auto 88% no-repeat;
	mask: var(--zbang-loader-mini) center / auto 88% no-repeat;
}
@media (max-width: 600px) {
	/* Branduri pe telefon: două coloane; ultima siglă, singură pe rând, pe toată lățimea */
	.zbang-home .zbang-brands {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 28px 16px !important;
	}
	.zbang-home .zbang-brands > .zbang-brand:last-child:nth-child(odd) {
		grid-column: 1 / -1;
	}
	.zbang-home .zbang-brand__name {
		font-size: var(--wp--preset--font-size--headline-sm) !important;
	}
}

/* „Prima pagină” apare doar în meniul deschis de pe telefon; pe desktop, logo-ul duce acolo */
.zbang-cats .wp-block-navigation__responsive-container:not(.is-menu-open) .zbang-nav-home {
	display: none !important;
}
.zbang-cats .wp-block-navigation__responsive-container.is-menu-open .zbang-nav-home {
	font-weight: 700;
}
/* Meniul de pe telefon, deschis: antetul (context de stivuire, z-index 10) trece peste tot,
   altfel lupa galeriei și bara de cumpărare (z-index 20) apăreau peste meniu. */
.zbang-site-header:has(.wp-block-navigation__responsive-container.is-menu-open) {
	z-index: 100000 !important;
}
body:has(.zbang-cats .wp-block-navigation__responsive-container.is-menu-open) .zbang-buybar {
	visibility: hidden;
}
/* Panoul: categoriile ca listă de piese — rânduri de 48 px, linie fină, grupele indentate, fără carduri plutitoare */
.zbang-cats .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	padding-top: 56px;
}
.zbang-cats .is-menu-open .wp-block-navigation__container {
	width: 100%;
	gap: 0 !important;
}
.zbang-cats .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item {
	width: 100%;
	border-bottom: 1px solid var(--wp--preset--color--linie);
}
.zbang-cats .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content {
	display: flex !important;
	align-items: center;
	min-height: 52px;
	padding: 0 !important;
	font-size: var(--wp--preset--font-size--reading) !important;
	font-weight: 700 !important;
}
.zbang-cats .is-menu-open .wp-block-navigation__submenu-container {
	position: static !important;
	width: 100% !important;
	min-width: 0 !important;
	margin: 0 0 12px !important;
	padding: 0 0 0 16px !important;
	border: 0 !important;
	border-left: 1px solid var(--wp--preset--color--linie) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
}
.zbang-cats .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	display: flex !important;
	align-items: center;
	min-height: 40px;
	padding: 0 !important;
	font-size: var(--wp--preset--font-size--body) !important;
	font-weight: 400 !important;
	color: var(--wp--preset--color--black) !important;
}
.zbang-cats .is-menu-open .wp-block-navigation__submenu-container .is-all .wp-block-navigation-item__content {
	font-weight: 600 !important;
}
.zbang-cats .is-menu-open .wp-block-navigation-item.is-accent > .wp-block-navigation-item__content {
	color: var(--wp--preset--color--red) !important;
}
