*,
*::before,
*::after {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

html {
	-webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;
	overflow-x: clip;
	overscroll-behavior-x: none;
}

body {
	overflow-x: clip;
	overscroll-behavior-x: none;
}

img,
video,
svg {
	display: block;
	max-width: 100%;
	height: auto;
}

input,
button,
textarea,
select {
	font: inherit;
}

ul,
ol {
	list-style: none;
}

button {
	background: none;
	border: none;
	cursor: pointer;
}

a {
	text-decoration: none;
}

:focus-visible {
	outline: 2px solid var(--color-accent);
	outline-offset: 3px;
}

.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.skip-link:focus {
	position: fixed;
	top: 8px;
	left: 8px;
	z-index: 9999;
	padding: 12px 20px;
	background: var(--color-ink);
	color: #fff;
	border-radius: var(--radius);
	font-weight: 600;
	font-size: var(--fs-small);
}

.topbar {
	background: var(--color-accent-soft);
	color: #fff;
}

.topbar__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 38px;
	gap: var(--gap);
}

.topbar__contact {
	display: flex;
	align-items: center;
	gap: 20px;
}

.topbar__link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 0.8125rem;
	color: rgba(255, 255, 255, 0.9);
	transition: opacity var(--dur) var(--ease);
}

.topbar__address {
	cursor: default;
}

.topbar__link:hover {
	color: #fff;
	opacity: 1;
}


.site-header {
	position: sticky;
	top: 0;
	z-index: 200;
	background: var(--color-bg);
	border-bottom: 1px solid var(--color-border);
	transition: box-shadow var(--dur) var(--ease);
}

.site-header.is-sticky {
	box-shadow: var(--shadow-md);
}

.site-header__inner {
	display: flex;
	align-items: center;
	gap: 32px;
	height: 72px;
}

.site-header__logo {
	flex-shrink: 0;
}

.site-header__logo .site-logo__img {
	height: 26px;
	width: auto;
	max-width: 140px;
}

.site-header__logo .custom-logo {
	height: 26px;
	width: auto;
}

.site-header__logo .custom-logo-link {
	display: block;
}

.site-logo__text {
	font-family: var(--font-heading);
	font-size: 1.05rem;
	color: var(--color-ink);
	white-space: nowrap;
}

.site-nav {
	flex: 1;
	overflow: visible;
}

.site-nav__list {
	display: flex;
	align-items: center;
	gap: 2px;
	list-style: none;
}

.site-nav__list > li {
	position: static;
}

.site-nav__link {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 8px 12px;
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.2px;
	text-transform: uppercase;
	color: var(--color-ink);
	border-radius: var(--radius);
	white-space: nowrap;
	transition: background var(--dur) var(--ease), color var(--dur) var(--ease);
}

.site-nav__link:hover,
.has-dropdown.is-open .site-nav__link {
	color: var(--color-accent);
}

.site-nav__link--cta {
	background: none;
	color: var(--color-ink);
}

.site-nav__link--cta:hover {
	color: var(--color-accent);
}

.mega-nav__chevron {
	transition: transform var(--dur) var(--ease);
	flex-shrink: 0;
}

.has-dropdown.is-open .mega-nav__chevron {
	transform: rotate(180deg);
}

.mega-panel {
	position: absolute;
	left: 0;
	right: 0;
	top: 100%;
	z-index: 199;
	background: var(--color-bg);
	border-top: 1px solid var(--color-border);
	border-bottom: 1px solid var(--color-border);
	box-shadow: var(--shadow-md);
	opacity: 0;
	visibility: hidden;
	transform: translateY(-6px);
	transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease), visibility 0s var(--dur);
	pointer-events: none;
}

.has-dropdown.is-open .mega-panel {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease), visibility 0s;
	pointer-events: auto;
}

.mega-panel__inner {
	padding-block: 32px;
}

.mega-panel__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px 20px;
}

@media (max-width: 1100px) {
	.mega-panel__grid {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media (max-width: 768px) {
	.mega-panel__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

.mega-panel__cat-title {
	display: flex;
	align-items: center;
	gap: 10px;
	font-weight: 700;
	font-size: 0.875rem;
	color: var(--color-ink);
	margin-bottom: 10px;
	transition: color var(--dur) var(--ease);
}

.mega-panel__cat-title:hover {
	color: var(--color-accent);
}

.mega-panel__cat-img {
	width: 44px;
	height: 44px;
	object-fit: cover;
	border-radius: var(--radius);
	flex-shrink: 0;
}

.mega-panel__sub {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.mega-panel__sub-link {
	display: block;
	padding: 2px 0;
	font-size: var(--fs-small);
	color: var(--color-muted);
	transition: color var(--dur) var(--ease);
}

.mega-panel__sub-link:hover {
	color: var(--color-accent);
}

/* Mega meniu — „Vezi mai mult" pentru coloanele cu multe subcategorii */
.mega-panel__sub-extra {
	display: none;
}

.mega-panel__sub.is-expanded .mega-panel__sub-extra {
	display: block;
}

.mega-panel__sub-more {
	margin-top: 4px;
}

.mega-panel__sub-toggle {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 2px 0;
	font-size: var(--fs-small);
	font-weight: 600;
	color: var(--color-accent);
	background: none;
	border: none;
	cursor: pointer;
	letter-spacing: 0.02em;
	transition: color var(--dur) var(--ease);
}

.mega-panel__sub-toggle:hover {
	color: var(--color-ink);
}

.mega-panel__sub-toggle-less {
	display: none;
}

.mega-panel__sub.is-expanded .mega-panel__sub-toggle-more {
	display: none;
}

.mega-panel__sub.is-expanded .mega-panel__sub-toggle-less {
	display: inline;
}

.mega-panel__footer {
	margin-top: 24px;
	padding-top: 20px;
	border-top: 1px solid var(--color-border);
}

.mega-panel__all {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 0;
	font-size: 0.8125rem;
	font-weight: 600;
	color: var(--color-accent);
	background: none;
	border: none;
	text-decoration: none;
	letter-spacing: 0.03em;
	transition: color var(--dur) var(--ease);
}

.mega-panel__all::after {
	content: '\2192';
	font-size: 1rem;
	line-height: 1;
}

.mega-panel__all:hover {
	color: var(--color-ink);
}

.site-header__actions {
	display: flex;
	align-items: center;
	gap: 4px;
	flex-shrink: 0;
}

/* FiboSearch în header — constrâns la înălțimea header-ului */
.header-search-widget {
	flex: 1;
	min-width: 0;
	display: flex;
	align-items: center;
}
.header-search-widget .dgwt-wcas-search-wrapp,
.header-search-widget .dgwt-wcas-sf-wrapp,
.header-search-widget .dgwt-wcas-search-form {
	width: 100%;
}

/* FiboSearch nu trebuie să se atașeze la search-ul intern din wishlist */
.wishlist-toolbar__search .dgwt-wcas-search-wrapp,
.wishlist-toolbar__search .dgwt-wcas-sf-wrapp,
.wishlist-toolbar__search .dgwt-wcas-suggestions-wrapp,
.wishlist-toolbar__search .dgwt-wcas-datalist {
	display: none !important;
}
.header-search-widget .dgwt-wcas-search-input {
	height: 40px !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	font-size: 0.875rem !important;
	box-sizing: border-box !important;
}
.header-search-widget .dgwt-wcas-search-submit {
	top: 50% !important;
	transform: translateY(-50%) !important;
}

.action-btn {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: var(--radius);
	color: var(--color-ink);
	transition: background var(--dur) var(--ease), color var(--dur) var(--ease);
}

.action-btn:hover {
	background: var(--color-bg-soft);
	color: var(--color-accent);
}

.cart-badge,
.header-wishlist-count {
	position: absolute;
	top: 4px;
	right: 4px;
	min-width: 16px;
	height: 16px;
	padding-inline: 4px;
	background: var(--color-accent);
	color: #fff;
	border-radius: var(--radius-pill);
	font-size: 10px;
	font-weight: 700;
	line-height: 16px;
	text-align: center;
}

.action-btn--wishlist.is-active,
.pc-action--wish.is-active {
	color: var(--color-accent);
}

.pc-action--wish.is-active svg {
	fill: var(--color-accent);
	stroke: var(--color-accent);
}

/* ── Account dropdown panel ──────────────────────────────── */
.account-dropdown-wrap {
	position: relative;
}

.account-panel {
	position: absolute;
	top: calc(100% + 10px);
	right: 0;
	width: 280px;
	background: var(--color-bg);
	border: 1px solid var(--color-border, #e8e4de);
	border-radius: var(--radius-md, 12px);
	box-shadow: 0 8px 32px rgba(51, 47, 44, .14);
	z-index: 400;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-8px);
	transition: opacity .2s var(--ease), transform .2s var(--ease), visibility 0s .2s;
}

.account-panel.is-open {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	transition: opacity .2s var(--ease), transform .2s var(--ease), visibility 0s;
}

.account-panel__header {
	padding: 20px 20px 14px;
	border-bottom: 1px solid var(--color-border, #e8e4de);
}

.account-panel__name {
	display: block;
	font-family: var(--font-heading);
	font-size: 1rem;
	color: var(--color-ink);
	font-weight: 400;
}

.account-panel__nav {
	display: flex;
	flex-direction: column;
	padding: 8px 0;
}

.account-panel__item {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 20px;
	font-size: .875rem;
	color: var(--color-ink);
	text-decoration: none;
	transition: background .15s, color .15s;
}

.account-panel__item:hover {
	background: var(--color-bg-alt, #F7F4EF);
	color: var(--color-accent);
}

.account-panel__item svg {
	flex-shrink: 0;
	opacity: .7;
	transition: opacity .15s;
}

.account-panel__item:hover svg {
	opacity: 1;
}

.account-panel__item--logout {
	border-top: 1px solid var(--color-border, #e8e4de);
	margin-top: 4px;
	padding-top: 12px;
	color: #9b3a3a;
}

.account-panel__item--logout:hover {
	background: #fdf2f2;
	color: #7a2222;
}

/* Login form (logged-out state) */
.account-panel__login-wrap {
	padding: 20px;
}

.account-panel__intro {
	font-family: var(--font-heading);
	font-size: 1.05rem;
	color: var(--color-ink);
	margin: 0 0 16px;
}

.account-panel__form {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.account-panel__field {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.account-panel__field label {
	font-size: .75rem;
	font-weight: 600;
	color: var(--color-ink);
	opacity: .7;
	text-transform: uppercase;
	letter-spacing: .04em;
}

.account-panel__input {
	width: 100%;
	padding: 9px 12px;
	border: 1px solid var(--color-border, #e8e4de);
	border-radius: var(--radius-sm, 8px);
	font-size: .875rem;
	color: var(--color-ink);
	background: var(--color-bg);
	outline: none;
	transition: border-color .15s;
	box-sizing: border-box;
}

.account-panel__input:focus {
	border-color: var(--color-accent);
}

.account-panel__submit {
	width: 100%;
	padding: 10px 16px;
	background: var(--color-accent);
	color: #fff;
	border: none;
	border-radius: var(--radius-pill, 999px);
	font-size: .875rem;
	font-weight: 600;
	cursor: pointer;
	transition: opacity .15s;
	margin-top: 4px;
}

.account-panel__submit:hover {
	opacity: .88;
}

.account-panel__links {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-top: 14px;
}

.account-panel__link {
	font-size: .8rem;
	color: var(--color-ink);
	opacity: .65;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.account-panel__link:hover {
	opacity: 1;
}

.account-panel__register-btn {
	font-size: .8rem;
	font-weight: 600;
	color: var(--color-accent);
	text-decoration: none;
	border: 1px solid var(--color-accent);
	border-radius: var(--radius-pill, 999px);
	padding: 5px 14px;
	transition: background .15s, color .15s;
}

.account-panel__register-btn:hover {
	background: var(--color-accent);
	color: #fff;
}

.nav-toggle {
	display: none;
	flex-direction: column;
	justify-content: center;
	gap: 5px;
	width: 40px;
	height: 40px;
	padding: 8px;
	border-radius: var(--radius);
	color: var(--color-ink);
	transition: background var(--dur) var(--ease);
}

.nav-toggle:hover {
	background: var(--color-bg-soft);
}

.nav-toggle__bar {
	display: block;
	width: 100%;
	height: 2px;
	background: currentColor;
	border-radius: 2px;
	transition: transform var(--dur) var(--ease), opacity var(--dur) var(--ease);
}

.nav-toggle[aria-expanded="true"] .nav-toggle__bar:nth-child(1) {
	transform: translateY(7px) rotate(45deg);
}

.nav-toggle[aria-expanded="true"] .nav-toggle__bar:nth-child(2) {
	opacity: 0;
}

.nav-toggle[aria-expanded="true"] .nav-toggle__bar:nth-child(3) {
	transform: translateY(-7px) rotate(-45deg);
}

.search-overlay {
	position: fixed;
	inset: 0;
	z-index: 300;
	background: rgba(51, 47, 44, 0.6);
	display: flex;
	align-items: flex-start;
	padding-top: 80px;
	opacity: 0;
	visibility: hidden;
	transition: opacity var(--dur) var(--ease), visibility 0s var(--dur);
}

.search-overlay.is-open {
	opacity: 1;
	visibility: visible;
	transition: opacity var(--dur) var(--ease), visibility 0s;
}

.search-overlay__inner {
	position: relative;
	width: 100%;
}

.search-overlay .search-form {
	display: flex;
	gap: 0;
}

.search-overlay .search-field {
	flex: 1;
	height: 56px;
	padding: 0 20px;
	border: 2px solid var(--color-border);
	border-right: none;
	border-radius: var(--radius) 0 0 var(--radius);
	background: var(--color-bg);
	font-size: 1rem;
	color: var(--color-ink);
}

.search-overlay .search-field:focus {
	outline: none;
	border-color: var(--color-accent);
}

.search-overlay .search-submit {
	height: 56px;
	padding: 0 24px;
	background: var(--color-accent);
	color: #fff;
	border: 2px solid var(--color-accent);
	border-radius: 0 var(--radius) var(--radius) 0;
	font-weight: 600;
	font-size: var(--fs-small);
	cursor: pointer;
	transition: background var(--dur) var(--ease);
}

.search-overlay .search-submit:hover {
	background: var(--color-accent-soft);
	border-color: var(--color-accent-soft);
}

.search-overlay__close {
	position: absolute;
	top: -48px;
	right: var(--gap);
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	border-radius: var(--radius);
	transition: color var(--dur) var(--ease);
}

.search-overlay__close:hover {
	color: var(--color-accent);
}

.mobile-menu {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	width: min(340px, 90vw);
	z-index: 350;
	background: var(--color-bg);
	overflow-y: auto;
	display: none;
	flex-direction: column;
	clip-path: inset(0 100% 0 0);
	transition: clip-path 0.3s var(--ease);
}

.mobile-menu.is-animating {
	display: flex;
}

.mobile-menu.is-open {
	display: flex;
	clip-path: inset(0 0% 0 0);
}

.mobile-menu__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 24px;
	border-bottom: 1px solid var(--color-border);
	flex-shrink: 0;
}

.mobile-menu__logo .custom-logo {
	height: 36px;
	width: auto;
}

.mobile-menu__logo .site-logo__text {
	font-size: 1.2rem;
}

.mobile-menu__close {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	color: var(--color-ink);
	border-radius: var(--radius);
	transition: color var(--dur) var(--ease), background var(--dur) var(--ease);
}

.mobile-menu__close:hover {
	color: var(--color-accent);
	background: var(--color-bg-soft);
}

.mobile-nav {
	flex: 1;
	overflow-y: auto;
	padding: 12px 0;
}

.mobile-nav__item {
	border-bottom: none;
}

.mobile-nav__row {
	display: flex;
	align-items: center;
}

.mobile-nav__link {
	flex: 1;
	padding: 10px 24px;
	font-size: 0.9375rem;
	font-weight: 500;
	color: var(--color-ink);
	transition: color var(--dur) var(--ease);
}

.mobile-nav__link:hover {
	color: var(--color-accent);
}

.mobile-nav__expand {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	color: var(--color-muted);
	flex-shrink: 0;
	transition: color var(--dur) var(--ease), transform var(--dur) var(--ease);
}

.mobile-nav__expand[aria-expanded="true"] {
	transform: rotate(180deg);
	color: var(--color-accent);
}

.mobile-nav__sub {
	padding: 4px 0 8px 0;
}

.mobile-nav__sub-link {
	display: block;
	padding: 7px 24px 7px 36px;
	font-size: var(--fs-small);
	color: var(--color-muted);
	transition: color var(--dur) var(--ease);
}

.mobile-nav__sub-link:hover {
	color: var(--color-accent);
}

/* Categorii cu sub-niveluri în meniul mobil */
.mobile-nav__sub > .mobile-nav__item {
	border-bottom: none;
}

.mobile-nav__sub > .mobile-nav__item > .mobile-nav__row .mobile-nav__link {
	padding-left: 36px;
	font-size: var(--fs-small);
	font-weight: 400;
	color: var(--color-muted);
}

.mobile-nav__sub > .mobile-nav__item > .mobile-nav__row .mobile-nav__expand {
	width: 40px;
	height: 40px;
}

.mobile-nav__sub .mobile-nav__sub {
	padding: 2px 0 6px 0;
}

.mobile-nav__sub .mobile-nav__sub .mobile-nav__sub-link {
	padding-left: 52px;
}

.mobile-menu__footer {
	padding: 20px 24px;
	border-top: 1px solid var(--color-border);
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.mobile-menu__phone,
.mobile-menu__login {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: var(--fs-small);
	font-weight: 600;
	color: var(--color-ink);
}

/* ================================================================
   BOTTOM NAV — bara mobilă fixă jos
   ================================================================ */

.bottom-nav {
	display: none;
}

@media (max-width: 767px) {

	/* Ascunde iconurile din header pe mobil */
	.site-header__actions {
		display: none;
	}

	/* Logo stânga, hamburger dreapta */
	.site-header__inner {
		gap: 16px;
	}

	.nav-toggle {
		margin-left: auto;
	}

	/* Spațiu pentru bara de jos */
	body {
		padding-bottom: calc(64px + env(safe-area-inset-bottom, 0px));
	}

	/* Bara dispare când meniul mobil e deschis */
	.mobile-menu.is-open ~ .bottom-nav {
		transform: translateY(100%);
	}

	.bottom-nav {
		display: flex;
		position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		z-index: 310;
		height: 64px;
		padding-bottom: env(safe-area-inset-bottom, 0px);
		background: var(--color-bg);
		border-top: 1px solid var(--color-border);
		box-shadow: 0 -2px 16px rgba(51, 47, 44, 0.09);
		transition: transform 0.3s var(--ease);
		overflow: clip;
	}

	.bottom-nav__btn {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		flex: 1;
		gap: 4px;
		color: var(--color-ink);
		transition: color var(--dur) var(--ease);
		position: relative;
	}

	.bottom-nav__btn:hover,
	.bottom-nav__btn:active {
		color: var(--color-accent);
	}

	.bottom-nav__label {
		font-size: 0.625rem;
		font-weight: 500;
		letter-spacing: 0.02em;
		line-height: 1;
	}

	.bottom-nav__icon-wrap {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.bottom-nav__btn .cart-badge,
	.bottom-nav__btn .js-wish-count {
		position: absolute;
		top: -6px;
		right: -8px;
	}

	/* FiboSearch trigger — constrâns strict la dimensiunea butonului */
	.bottom-nav__fibo-trigger {
		position: absolute;
		inset: 0;
		opacity: 0;
		z-index: 2;
		overflow: hidden;
		cursor: pointer;
	}
	.bottom-nav__fibo-trigger * {
		max-width: 100% !important;
		min-width: 0 !important;
	}
}

.site-overlay {
	position: fixed;
	inset: 0;
	z-index: 299;
	background: rgba(51, 47, 44, 0.5);
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s var(--ease), visibility 0s 0.3s;
}

.site-overlay.is-visible {
	opacity: 1;
	visibility: visible;
	transition: opacity 0.3s var(--ease), visibility 0s;
}

.site-footer {
	position: relative;
	background: var(--color-ink);
	color: rgba(255, 255, 255, 0.75);
}

.site-footer--has-bg {
	background-size: cover;
	background-position: center top;
	background-repeat: no-repeat;
}

.site-footer__overlay {
	position: absolute;
	inset: 0;
	pointer-events: none;
	z-index: 0;
}

.site-footer__inner {
	position: relative;
	z-index: 1;
}

.site-footer__divider {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	margin-inline: auto;
	max-width: var(--container);
	padding-inline: var(--gap);
}

.site-footer__newsletter {
	padding-block: clamp(48px, 6vw, 80px);
	text-align: center;
}

.site-footer__newsletter-inner {
	max-width: 640px;
	margin-inline: auto;
}

.site-footer__newsletter-title {
	font-family: var(--font-heading);
	font-size: clamp(1.6rem, 3vw, 2.2rem);
	color: #fff;
	margin-bottom: 32px;
	font-weight: 400;
	line-height: 1.25;
}

.site-footer__main {
	padding-block: clamp(40px, 5vw, 64px);
}

.site-footer__grid {
	display: grid;
	grid-template-columns: 1.6fr 1fr 1fr;
	gap: 48px 40px;
}

.footer-logo .custom-logo {
	height: 44px;
	width: auto;
	filter: brightness(0) invert(1);
}

.footer-logo .site-logo__text {
	color: #fff;
	font-size: 1.4rem;
}

.footer-desc {
	margin-top: 16px;
	font-size: var(--fs-small);
	line-height: var(--lh-body);
}

.footer-contact {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-top: 24px;
	font-style: normal;
}

.footer-contact__item {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	font-size: var(--fs-small);
	color: rgba(255, 255, 255, 0.7);
}

.footer-contact__item svg {
	flex-shrink: 0;
	margin-top: 1px;
}

.footer-contact__link {
	transition: color var(--dur) var(--ease);
}

.footer-contact__link:hover {
	color: var(--color-accent);
}

.footer-nav__title {
	font-family: var(--font-body);
	font-size: var(--fs-small);
	font-weight: 700;
	letter-spacing: 0.8px;
	text-transform: uppercase;
	color: #fff;
	margin-bottom: 20px;
}

.footer-nav__list {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.footer-nav__list a {
	font-size: var(--fs-small);
	color: rgba(255, 255, 255, 0.65);
	transition: color var(--dur) var(--ease);
}

.footer-nav__list a:hover {
	color: var(--color-accent);
}

.footer-newsletter__text {
	font-size: var(--fs-small);
	margin-bottom: 16px;
}

.footer-newsletter__form {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.footer-newsletter__row {
	display: flex;
	gap: 0;
}

.footer-newsletter__input {
	flex: 1;
	height: 48px;
	padding: 0 20px;
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-right: none;
	border-radius: var(--radius-pill) 0 0 var(--radius-pill);
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
	font-size: var(--fs-small);
	transition: border-color var(--dur) var(--ease);
}

.footer-newsletter__input::placeholder {
	color: rgba(255, 255, 255, 0.4);
}

.footer-newsletter__input:focus {
	outline: none;
	border-color: var(--color-accent);
}

.footer-newsletter__btn {
	height: 48px;
	padding: 0 24px;
	border-radius: 0 var(--radius-pill) var(--radius-pill) 0;
	font-size: 0.8125rem;
	white-space: nowrap;
}

.footer-newsletter__msg {
	font-size: var(--fs-small);
	padding: 8px 12px;
	border-radius: var(--radius);
}

.footer-newsletter__msg--ok {
	background: rgba(100, 200, 100, 0.15);
	color: #7dd87d;
}

.footer-newsletter__msg--err {
	background: rgba(220, 80, 80, 0.15);
	color: #f08080;
}

.site-footer__bottom {
	padding-block: 24px;
}

.site-footer__bottom-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	flex-wrap: wrap;
}

.footer-anpc {
	display: flex;
	align-items: center;
	gap: 12px;
}

.site-footer .footer-anpc img {
	height: 40px;
	width: auto;
	opacity: 0.85;
	transition: opacity var(--dur) var(--ease);
}

.site-footer .footer-anpc a:hover img {
	opacity: 1;
}

.social-links {
	display: flex;
	align-items: center;
	gap: 8px;
}

.social-link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: var(--radius);
	color: rgba(255, 255, 255, 0.7);
	transition: color var(--dur) var(--ease), border-color var(--dur) var(--ease), background var(--dur) var(--ease);
}

.social-link:hover {
	color: var(--color-accent);
	border-color: var(--color-accent);
	background: rgba(230, 175, 93, 0.08);
}

.footer-copyright {
	font-size: 0.8125rem;
	color: rgba(255, 255, 255, 0.45);
}

@media ( max-width: 1100px ) {
	.site-nav {
		display: none;
	}

	.nav-toggle {
		display: flex;
	}
}

@media ( max-width: 860px ) {
	.topbar__address {
		display: none;
	}

	.site-footer__grid {
		grid-template-columns: 1fr 1fr;
	}

	.site-footer__col--brand {
		grid-column: 1 / -1;
	}
}

@media ( max-width: 768px ) {
	.site-footer__newsletter {
		padding-block: 36px 28px;
	}

	.site-footer__newsletter-title {
		font-size: clamp(1.3rem, 5vw, 1.8rem);
		margin-bottom: 20px;
	}

	.footer-newsletter__row {
		flex-direction: column;
		gap: 10px;
	}

	.footer-newsletter__input {
		border: 1px solid rgba(255, 255, 255, 0.25);
		border-radius: var(--radius-pill);
		height: 46px;
		width: 100%;
		font-size: 1rem;
		padding: 0 18px;
	}

	.footer-newsletter__btn {
		border-radius: var(--radius-pill);
		width: 100%;
		height: 46px;
		justify-content: center;
		font-size: 0.9rem;
	}

	.site-footer__grid {
		grid-template-columns: 1fr 1fr;
		gap: 32px 24px;
	}

	.site-footer__col--brand {
		grid-column: 1 / -1;
	}

	.site-footer__bottom-inner {
		flex-direction: column;
		align-items: flex-start;
		gap: 16px;
	}
}

@media ( max-width: 480px ) {
	.site-footer__grid {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.site-footer__col--brand {
		grid-column: auto;
	}
}

.section-label {
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 1.4px;
	text-transform: uppercase;
	color: var(--color-muted);
	margin-bottom: 10px;
}

.section-heading {
	font-size: var(--fs-h2);
	color: var(--color-ink);
	margin-bottom: clamp(28px, 4vw, 48px);
}

.hero {
	position: relative;
	overflow: hidden;
}

/* ============================================================
   HERO SLIDER – Premium
   ============================================================ */

/* ============================================================
   HERO SLIDER — 2 coloane (stânga texte / dreapta grafică)
   ============================================================ */

.hero-slider {
	position: relative;
	overflow: hidden;
}

.hero-swiper {
	width: 100%;
	overflow: hidden;
}

.hero-slide {
	background-color: var(--slide-bg, #332F2C);
	height: calc(100vh - 110px);
	height: calc(100svh - 110px);
	min-height: 480px;
	max-height: 960px;
	display: flex;
	align-items: center;
	position: relative;
}

/* Imagine de fundal */
.hero-slide--has-bg {
	background-image: var(--slide-bg-img);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

/* Overlay colorat: pseudo-element peste imagine, sub conținut */
.hero-slide--has-bg::before {
	content: '';
	position: absolute;
	inset: 0;
	background-color: var(--slide-bg, #332F2C);
	opacity: var(--slide-overlay, 0.55);
	z-index: 1;
}

.hero-slide__inner {
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: center;
	gap: clamp(32px, 5vw, 80px);
	padding-block: clamp(56px, 7vw, 100px);
	width: 100%;
	position: relative;
	z-index: 2;
}

/* Fără grafică — textele ocupă lățimea completă */
.hero-slide--text-only .hero-slide__inner {
	grid-template-columns: 1fr;
	max-width: 780px;
}

/* ---- Coloana stânga ---- */
.hero-slide__left {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 20px;
}

.hero-slide__badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: var(--color-accent);
	color: #fff;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	padding: 5px 14px;
	border-radius: var(--radius-pill);
}

.hero-slide__title {
	font-family: var(--font-heading);
	font-size: clamp(2rem, 4vw, 3.25rem);
	line-height: 1.1;
	color: #fff;
	letter-spacing: -0.01em;
	margin: 0;
}

.hero-slide__desc {
	font-size: clamp(0.9375rem, 1.4vw, 1.0625rem);
	color: rgba(255, 255, 255, 0.72);
	line-height: 1.7;
	margin: 0;
	max-width: 440px;
}

.hero-slide__actions {
	display: flex;
	align-items: center;
	gap: 14px;
	flex-wrap: wrap;
	margin-top: 6px;
}

/* CTA primar — fundal auriu solid */
.hero-slide__cta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 14px 28px;
	background: var(--color-accent);
	border: 1px solid transparent;
	border-radius: var(--radius-pill);
	color: #fff;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	text-decoration: none;
	transition: background var(--dur) var(--ease), gap var(--dur) var(--ease);
}

.hero-slide__cta:hover {
	background: #c99540;
	gap: 12px;
}

/* CTA secundar — ghost alb */
.hero-slide__cta2 {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 13px 24px;
	background: transparent;
	border: 1.5px solid rgba(255, 255, 255, 0.35);
	border-radius: var(--radius-pill);
	color: rgba(255, 255, 255, 0.85);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-decoration: none;
	transition: border-color var(--dur) var(--ease), color var(--dur) var(--ease), background var(--dur) var(--ease);
}

.hero-slide__cta2:hover {
	border-color: rgba(255, 255, 255, 0.7);
	color: #fff;
	background: rgba(255, 255, 255, 0.07);
}

/* ---- Coloana dreapta ---- */
.hero-slide__right {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

/* Glow subtil în spatele imaginii */
.hero-slide__right::before {
	content: '';
	position: absolute;
	inset: 10%;
	background: radial-gradient(ellipse at center, var(--color-accent), transparent 70%);
	opacity: 0.1;
	border-radius: 50%;
	pointer-events: none;
}

.hero-slide__graphic {
	position: relative;
	z-index: 1;
	max-height: min(520px, 58vh);
	max-width: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	display: block;
	filter: drop-shadow(0 24px 64px rgba(0, 0, 0, 0.30));
}

.hero-slide__graphic-placeholder {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 12px;
	min-height: 300px;
	color: rgba(255, 255, 255, 0.25);
	font-size: var(--fs-small);
}

/* ---- Navigare ---- */
.hero-swiper__prev,
.hero-swiper__next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, 0.08);
	border: 1.5px solid rgba(255, 255, 255, 0.22);
	color: #fff;
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	cursor: pointer;
	transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease);
}

.hero-swiper__prev:hover,
.hero-swiper__next:hover {
	background: rgba(255, 255, 255, 0.18);
	border-color: rgba(255, 255, 255, 0.5);
}

.hero-swiper__prev { left: clamp(10px, 2vw, 28px); }
.hero-swiper__next { right: clamp(10px, 2vw, 28px); }

/* ---- Dots ---- */
.hero-swiper__pagination {
	position: absolute;
	bottom: 24px;
	left: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	z-index: 10;
	pointer-events: none;
}

.hero-swiper__pagination .swiper-pagination-bullet {
	width: 8px;
	height: 8px;
	border-radius: 4px;
	background: rgba(255, 255, 255, 0.4);
	opacity: 1;
	transition: width 0.3s var(--ease), background 0.3s var(--ease);
	pointer-events: auto;
	cursor: pointer;
}

.hero-swiper__pagination .swiper-pagination-bullet-active {
	width: 28px;
	background: var(--color-accent);
}

/* ---- Fade transition ---- */
.hero-swiper.swiper-fade .swiper-slide { pointer-events: none; }
.hero-swiper.swiper-fade .swiper-slide-active { pointer-events: auto; }

/* ---- Animații intrare ---- */
.hero-slide .hero-slide__left {
	opacity: 0;
	transform: translateY(22px);
	transition: opacity 0.65s ease 0.15s, transform 0.65s ease 0.15s;
}

.hero-slide .hero-slide__right {
	opacity: 0;
	transform: translateY(16px) scale(0.97);
	transition: opacity 0.65s ease 0.3s, transform 0.65s ease 0.3s;
}

.swiper-slide-active .hero-slide__left {
	opacity: 1;
	transform: translateY(0);
}

.swiper-slide-active .hero-slide__right {
	opacity: 1;
	transform: translateY(0) scale(1);
}

/* ---- Responsive ---- */
@media (max-width: 860px) {
	.hero-slide__inner {
		grid-template-columns: 1fr;
		text-align: center;
		gap: 32px;
		padding-block: clamp(40px, 5vw, 64px);
	}

	.hero-slide__left {
		align-items: center;
		order: 2;
	}

	.hero-slide__right {
		order: 1;
	}

	.hero-slide__graphic {
		max-height: min(260px, 35vh);
	}

	.hero-slide__desc {
		max-width: 560px;
		margin-inline: auto;
	}

	.hero-swiper__prev { left: 8px; }
	.hero-swiper__next { right: 8px; }
}

@media (max-width: 480px) {
	.hero-slide {
		height: calc(100svh - 110px);
		max-height: none;
	}

	.hero-slide__inner {
		gap: 20px;
		padding-block: 36px 48px;
	}

	.hero-slide__graphic {
		max-height: min(200px, 30vh);
	}

	.hero-slide__title {
		font-size: clamp(1.625rem, 7vw, 2.25rem);
	}

	.hero-slide__actions {
		justify-content: center;
	}

	.hero-swiper__prev,
	.hero-swiper__next {
		top: auto;
		transform: none;
		bottom: 12px;
		width: 38px;
		height: 38px;
	}

	.hero-swiper__prev { left: auto; right: 58px; }
	.hero-swiper__next { right: 12px; }

	.hero-swiper__pagination { display: none; }
}

.promo-banner {
	width: 100%;
	line-height: 0;
}

.promo-banner__link {
	display: block;
	line-height: 0;
}

.promo-banner__img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
}

.promo-banner__img--mobile {
	display: none;
}

@media (max-width: 767px) {
	.promo-banner__img--desktop {
		display: none;
	}
	.promo-banner__img--mobile {
		display: block;
	}
}

.usp-band {
	padding-block: clamp(32px, 4vw, 48px);
}

.usp-band__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--gap);
}

.usp-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 14px;
	padding: 28px 20px;
}

.usp-item__icon {
	color: var(--color-accent);
}

.usp-item__title {
	font-family: var(--font-heading);
	font-size: 1.1rem;
	color: var(--color-ink);
}

.usp-item__text {
	font-size: var(--fs-small);
	color: var(--color-muted);
	line-height: var(--lh-body);
}

.cats-grid__header {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-bottom: 20px;
}

.cats-grid__nav {
	display: flex;
	gap: 8px;
}

.cats-grid-swiper {
	overflow: hidden;
}

.cats-grid__list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.cats-grid__item {
	display: flex;
	justify-content: center;
	height: auto;
}

.cat-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 14px;
	text-align: center;
	width: 100%;
	text-decoration: none;
}

.cat-card__img-wrap {
	width: 100%;
	aspect-ratio: 1;
	overflow: hidden;
	background: var(--color-bg-soft);
}

.cat-card__img-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: opacity var(--dur) var(--ease);
}

.cat-card:hover .cat-card__img-wrap img {
	opacity: 0.85;
}

.cat-card__placeholder {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--color-border);
}

.cat-card__name {
	font-size: var(--fs-small);
	font-weight: 600;
	color: var(--color-ink);
	letter-spacing: 0.2px;
	transition: color var(--dur) var(--ease);
}

.cat-card:hover .cat-card__name {
	color: var(--color-accent);
}

.cat-circle__name {
	font-family: var(--font-heading);
	font-size: 0.9375rem;
	color: var(--color-ink);
	transition: color var(--dur) var(--ease);
}

.cat-circle:hover .cat-circle__name {
	color: var(--color-accent);
}

/* ── cats-featured: layout 2 coloane full-width ── */
.cats-featured {
	padding-block: clamp(48px, 6vw, 80px);
}

/* Wrapper full-width (înlocuiește .container) */
.cats-featured__layout {
	display: grid;
	grid-template-columns: 1fr 3fr;
	min-height: 420px;
}

/* Coloana stângă: text + navigare */
.cats-featured__left {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 24px;
	padding: clamp(32px, 4vw, 64px) clamp(24px, 3vw, 48px);
	background: var(--color-bg);
}

.cats-featured__left .section-label {
	margin-bottom: 0;
}

.cats-featured__left .section-heading {
	margin-bottom: 0;
}

.cats-featured__nav {
	display: flex;
	gap: 8px;
	margin-top: 8px;
}

.cats-featured__prev,
.cats-featured__next {
	position: static;
	transform: none;
	flex-shrink: 0;
}

/* Coloana dreaptă: slider */
.cats-featured__right {
	overflow: hidden;
	background: var(--color-bg);
	padding: clamp(24px, 3vw, 40px) clamp(16px, 2vw, 32px);
}

.cats-swiper {
	overflow: hidden;
}

.cats-swiper .swiper-slide {
	height: auto; /* toate slide-urile să aibă aceeași înălțime */
}

/* Responsive: stivă pe mobil */
@media (max-width: 860px) {
	.cats-featured__layout {
		grid-template-columns: 1fr;
	}

	.cats-featured__nav {
		display: flex; /* rămân vizibile şi pe mobil */
	}
}

.cat-slide-card {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	background: var(--color-bg);
	height: 100%;
}

.cat-slide-card__media {
	display: block;
	aspect-ratio: 4/3;
	overflow: hidden;
	background: var(--color-bg-soft);
	flex-shrink: 0;
}

.cat-slide-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.4s var(--ease);
}

.cat-slide-card:hover .cat-slide-card__media img {
	transform: none;
}

.cat-slide-card__placeholder {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--color-muted);
}

.cat-slide-card__body {
	padding: 18px 20px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.cat-slide-card__title {
	font-family: var(--font-heading);
	font-size: 1.1rem;
	color: var(--color-ink);
}

.cat-slide-card__title a {
	color: inherit;
	transition: color var(--dur) var(--ease);
}

.cat-slide-card__title a:hover {
	color: var(--color-accent);
}

.cat-slide-card__link {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.8px;
	text-transform: uppercase;
	color: var(--color-ink);
	transition: color var(--dur) var(--ease), gap var(--dur) var(--ease);
}

.cat-slide-card__link:hover {
	color: var(--color-accent);
	gap: 8px;
}

.cta-band {
	background: var(--color-ink);
	padding-block: clamp(48px, 6vw, 80px);
}

.cta-band__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 40px;
}

.cta-band__title {
	font-size: var(--fs-h2);
	color: #fff;
}

.cta-band__desc {
	font-size: 1rem;
	color: rgba(255, 255, 255, 0.7);
	margin-top: 10px;
	max-width: 480px;
}

.cta-band__actions {
	display: flex;
	flex-shrink: 0;
	gap: 12px;
}

.cta-band__btn--ghost {
	border-color: rgba(255, 255, 255, 0.35);
	color: #fff;
}

.cta-band__btn--ghost:hover {
	border-color: var(--color-accent);
	color: var(--color-accent);
	background: transparent;
}

.home-products {
	padding-block: clamp(48px, 6vw, 80px);
}

.home-products__head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin-bottom: 32px;
	gap: 24px;
}

.home-products__head-left .section-heading {
	margin-bottom: 0;
}

.home-products__nav {
	display: flex;
	gap: 8px;
	flex-shrink: 0;
}

.home-products__nav .products-swiper__prev,
.home-products__nav .products-swiper__next {
	position: static;
	transform: none;
}

.home-products__swiper-wrap {
	overflow: hidden;
}

.home-products__footer {
	display: flex;
	justify-content: center;
	margin-top: 32px;
}

.home-products__all-link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.8px;
	text-transform: uppercase;
	color: var(--color-ink);
	border-bottom: 1px solid currentColor;
	padding-bottom: 2px;
	transition: color var(--dur) var(--ease), gap var(--dur) var(--ease);
}

.home-products__all-link:hover {
	color: var(--color-accent);
	gap: 9px;
}

.products-swiper {
	overflow: visible;
	padding-inline: 20px;
}

.products-swiper .swiper-wrapper {
	align-items: stretch;
}

.products-swiper .swiper-slide {
	height: auto;
	display: flex;
	flex-direction: column;
}

.product-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	background: var(--color-bg);
}

.product-card__media {
	position: relative;
	overflow: hidden;
	background: var(--color-bg-soft);
	aspect-ratio: 1;
}

.product-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.4s var(--ease);
}

.product-card:hover .product-card__media img {
	transform: none;
}

.product-card__img-placeholder {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--color-muted);
	background: var(--color-bg-soft);
}

.product-card__badge {
	position: absolute;
	top: 12px;
	left: 12px;
	font-size: 11px;
}

.product-card__body {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 16px;
	flex: 1;
}


.product-card__cat {
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	color: var(--color-muted);
	text-decoration: none;
}

a.product-card__cat:hover {
	color: var(--color-accent);
}

.product-card__title {
	font-family: var(--font-heading);
	font-size: 1rem;
	line-height: 1.3;
	min-height: calc(1rem * 1.3 * 2);
}

.product-card__title a {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	color: var(--color-ink);
	transition: color var(--dur) var(--ease);
}

.product-card__title a:hover {
	color: var(--color-accent);
}

.product-card__rating {
	display: none;
}

.product-card__price {
	font-weight: 700;
	color: var(--color-ink);
	font-size: 1.0625rem;
	margin-top: auto;
}

.product-card__price del {
	font-weight: 400;
	color: var(--color-muted);
	font-size: var(--fs-small);
}

.product-card__price ins {
	text-decoration: none;
	color: var(--color-accent);
}

.product-card__cart {
	margin-top: auto;
	padding: 10px 18px;
	font-size: 0.8125rem;
	width: 100%;
	justify-content: center;
	white-space: nowrap;
}

.swiper-nav-btn {
	width: 52px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--color-bg);
	border: 1px solid var(--color-border);
	border-radius: 100px;
	color: var(--color-ink);
	box-shadow: var(--shadow-sm);
	flex-shrink: 0;
	transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease);
}

.swiper-nav-btn:hover,
.swiper-nav-btn:focus-visible {
	background: var(--color-accent);
	border-color: var(--color-accent);
	color: #fff;
}

.swiper-nav-btn.swiper-button-disabled {
	opacity: 0.35;
	pointer-events: none;
}

/* ============================================================
   INSPIRATION – Shoppable Image cu Hotspot-uri
   ============================================================ */

.inspiration {
	background: var(--color-ink);
}

.inspiration--no-bg .inspiration__frame {
	background: linear-gradient(135deg, #2a2520 0%, #1a1714 100%);
}

.inspiration__frame {
	position: relative;
	aspect-ratio: 16 / 7;
	min-height: 400px;
}

.inspiration__bg-wrap {
	position: absolute;
	inset: 0;
	overflow: hidden;
	z-index: 0;
}

.inspiration__bg {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
}

.inspiration__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(0,0,0,0.68) 0%, rgba(0,0,0,0.32) 50%, rgba(0,0,0,0.08) 100%);
	pointer-events: none;
	z-index: 1;
}

.inspiration__inner {
	position: absolute;
	inset: 0;
	z-index: 2;
	display: flex;
	align-items: center;
	padding-inline: clamp(24px, 6vw, 96px);
}

.inspiration__intro {
	display: flex;
	flex-direction: column;
	gap: 22px;
	max-width: 400px;
	align-items: flex-start;
}

.inspiration__title {
	font-size: var(--fs-h2);
	color: #fff;
}

.inspiration__text {
	color: rgba(255, 255, 255, 0.75);
	font-size: 1rem;
	line-height: var(--lh-body);
}

.btn--ghost-light {
	background: transparent;
	border-color: rgba(255, 255, 255, 0.45);
	color: #fff;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.6px;
}

.btn--ghost-light:hover {
	border-color: #fff;
	background: rgba(255, 255, 255, 0.1);
	color: #fff;
}

/* ============================================================
   HOTSPOT-URI
   ============================================================ */

.hotspot {
	position: absolute;
	left: var(--hx, 50%);
	top:  var(--hy, 50%);
	transform: translate(-50%, -50%);
	z-index: 10;
	overflow: visible;
}

@media (max-width: 768px) {
	.hotspot { display: none; }
}

/* Pin – butonul circular */
.hotspot__pin {
	position: relative;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.9);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: transform 0.2s var(--ease), background 0.2s var(--ease);
	box-shadow: 0 2px 8px rgba(0,0,0,0.3);
}

.hotspot__pin:hover,
.hotspot__pin[aria-expanded="true"] {
	transform: scale(1.15);
	background: #fff;
}

.hotspot__dot {
	color: var(--color-accent);
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
}

/* Inel pulsatoriu */
.hotspot__pulse {
	position: absolute;
	inset: -5px;
	border-radius: 50%;
	border: 1.5px solid rgba(255, 255, 255, 0.55);
	animation: hotspot-pulse 2.4s ease-out infinite;
	pointer-events: none;
}

@keyframes hotspot-pulse {
	0%   { transform: scale(1);   opacity: 0.8; }
	70%  { transform: scale(1.6); opacity: 0; }
	100% { transform: scale(1.6); opacity: 0; }
}

.hotspot__pin[aria-expanded="true"] .hotspot__pulse {
	animation-play-state: paused;
	opacity: 0;
}

/* Popup card */
.hotspot__popup {
	position: absolute;
	width: 220px;
	background: #fff;
	box-shadow: 0 8px 32px rgba(0,0,0,0.22);
	overflow: hidden;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: scale(0.94) translateY(4px);
	transition:
		opacity 0.2s var(--ease),
		visibility 0.2s var(--ease),
		transform 0.2s var(--ease);
	z-index: 9999;
}

.hotspot__popup.is-open {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: scale(1) translateY(0);
}

/* Direcție popup: dreapta (default) */
.hotspot {
	--popup-left: calc(100% + 14px);
	--popup-right: auto;
	--popup-top: 50%;
	--popup-translate-y: -50%;
}

.hotspot__popup {
	top:       var(--popup-top);
	left:      var(--popup-left);
	right:     var(--popup-right);
	transform: scale(0.92) translateY(calc(var(--popup-translate-y) + 6px));
}

.hotspot__popup.is-open {
	transform: scale(1) translateY(var(--popup-translate-y));
}

/* Popup la stânga când hotspot-ul e în dreapta paginii */
.hotspot--left {
	--popup-left: auto;
	--popup-right: calc(100% + 14px);
}

/* Popup sus când hotspot-ul e jos */
.hotspot--vbottom {
	--popup-top: auto;
	--popup-translate-y: 0;
}

.hotspot--vbottom .hotspot__popup {
	top: auto;
	bottom: calc(100% + 14px);
}

/* Popup jos când hotspot-ul e sus */
.hotspot--vtop {
	--popup-translate-y: 0;
}

.hotspot--vtop .hotspot__popup {
	top: calc(100% + 14px);
}

/* Conținut popup */
.hotspot__popup-img {
	display: block;
	width: 100%;
	aspect-ratio: 4/3;
	overflow: hidden;
	background: var(--color-bg-soft);
}

.hotspot__popup-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s var(--ease);
}

.hotspot__popup-img:hover img {
	transform: scale(1.04);
}

.hotspot__popup-img--placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--color-muted);
	width: 100%;
	aspect-ratio: 4/3;
	background: var(--color-bg-soft);
}

.hotspot__popup-body {
	padding: 14px 16px 16px;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.hotspot__popup-title {
	font-family: var(--font-heading);
	font-size: 0.875rem;
	line-height: 1.3;
}

.hotspot__popup-title a {
	color: var(--color-ink);
	transition: color var(--dur) var(--ease);
}

.hotspot__popup-title a:hover {
	color: var(--color-accent);
}

.hotspot__popup-price {
	font-size: 0.875rem;
	font-weight: 700;
	color: var(--color-ink);
}

.hotspot__popup-price .price {
	font-size: inherit;
	font-weight: inherit;
}

.hotspot__popup-link {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	color: var(--color-accent);
	margin-top: 4px;
	transition: gap var(--dur) var(--ease);
}

.hotspot__popup-link:hover {
	gap: 8px;
}

/* Responsive */
@media (max-width: 768px) {
	.inspiration__frame {
		aspect-ratio: 4 / 3;
		min-height: 320px;
	}

	.inspiration__inner {
		padding-inline: 20px;
	}

	.inspiration__intro {
		max-width: 260px;
	}

	.hotspot__popup {
		width: 180px;
	}

	.hotspot__popup-body {
		padding: 10px 12px 12px;
	}
}

.testimonials {
	padding-block: clamp(48px, 6vw, 80px);
}

.testimonials__head {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 48px;
	align-items: flex-start;
	margin-bottom: clamp(28px, 4vw, 48px);
}

.testimonials__head-left .section-heading {
	margin-bottom: 0;
}

.testimonials__head-right {
	display: flex;
	flex-direction: column;
	gap: 20px;
	padding-top: 4px;
}

.testimonials__intro {
	font-size: var(--fs-small);
	color: var(--color-muted);
	line-height: var(--lh-body);
}

.testimonials__nav {
	display: flex;
	gap: 8px;
}

.testimonials-swiper {
	overflow: hidden;
}

.testimonial-card {
	background: var(--color-bg);
	padding: 28px;
	height: 100%;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.testimonial-card__top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
}

.testimonial-card__author-info {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.testimonial-card__author {
	font-style: normal;
	font-weight: 700;
	font-size: 0.9375rem;
	color: var(--color-ink);
}

.testimonial-card__city {
	font-size: var(--fs-small);
	color: var(--color-muted);
}

.testimonial-card__stars {
	display: flex;
	gap: 2px;
	margin-top: 2px;
}

.testimonial-card__quote-icon {
	font-family: Georgia, serif;
	font-size: 4rem;
	line-height: 1;
	color: var(--color-accent);
	opacity: 0.5;
	user-select: none;
	flex-shrink: 0;
}

.testimonial-card__text {
	font-size: var(--fs-small);
	color: var(--color-muted);
	line-height: var(--lh-body);
	flex: 1;
}

/* ================================================================
   BRANDS — carousel cu săgeți
   ================================================================ */

.brands {
	padding-block: clamp(40px, 5vw, 72px);
}

.brands__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: clamp(24px, 3vw, 40px);
}

.brands__head .section-heading {
	margin-bottom: 0;
}

.brands__nav {
	display: flex;
	gap: 8px;
	flex-shrink: 0;
}

.brands-swiper {
	overflow: hidden;
}

.brands__slide {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 96px;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);
	background: var(--color-bg);
	transition: border-color var(--dur) var(--ease);
}

.brands__slide:hover {
	border-color: var(--color-accent);
}

.brands__brand-link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	padding: 16px 20px;
	text-decoration: none;
	opacity: 0.6;
	transition: opacity var(--dur) var(--ease);
}

.brands__brand-link:hover {
	opacity: 1;
}

.brands__logo {
	max-height: 52px;
	max-width: 130px;
	width: auto;
	height: auto;
	object-fit: contain;
	filter: grayscale(100%);
	transition: filter var(--dur) var(--ease);
}

.brands__brand-link:hover .brands__logo {
	filter: grayscale(0%);
}

.brands__name {
	font-family: var(--font-heading);
	font-size: 0.9375rem;
	color: var(--color-muted);
	white-space: nowrap;
	transition: color var(--dur) var(--ease);
}

.brands__brand-link:hover .brands__name {
	color: var(--color-ink);
}

.blog-preview__header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin-bottom: clamp(24px, 4vw, 48px);
	gap: 24px;
}

.blog-preview__header .section-heading {
	margin-bottom: 0;
}

.blog-preview__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--gap);
}

/* stilurile .blog-card sunt definite complet în secțiunea BLOG GRID de mai jos */

.home-newsletter {
	position: relative;
	padding-block: clamp(64px, 8vw, 120px);
	background: var(--color-ink);
	background-image: var(--newsletter-bg);
	background-size: cover;
	background-position: center;
}

.home-newsletter__overlay {
	position: absolute;
	inset: 0;
	background: rgba(30, 24, 20, 0.72);
}

.home-newsletter__inner {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 32px;
	text-align: center;
}

.home-newsletter__title {
	font-size: clamp(1.6rem, 3.5vw, 2.6rem);
	color: #fff;
	max-width: 600px;
	line-height: 1.15;
}

.home-newsletter__form {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	width: 100%;
	max-width: 560px;
}

.home-newsletter__row {
	display: flex;
	width: 100%;
}

.home-newsletter__input {
	flex: 1;
	height: 52px;
	padding: 0 22px;
	border: 1.5px solid rgba(255, 255, 255, 0.25);
	border-right: none;
	border-radius: var(--radius-pill) 0 0 var(--radius-pill);
	background: rgba(255, 255, 255, 0.08);
	font-size: 0.9375rem;
	color: #fff;
	transition: border-color var(--dur) var(--ease), background var(--dur) var(--ease);
}

.home-newsletter__input::placeholder {
	color: rgba(255, 255, 255, 0.45);
}

.home-newsletter__input:focus {
	outline: none;
	border-color: var(--color-accent);
	background: rgba(255, 255, 255, 0.12);
}

.home-newsletter__btn {
	height: 52px;
	padding: 0 28px;
	border: 1.5px solid var(--color-accent);
	border-radius: 0 var(--radius-pill) var(--radius-pill) 0;
	background: var(--color-accent);
	color: #fff;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.8px;
	text-transform: uppercase;
	white-space: nowrap;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	cursor: pointer;
	transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease);
}

.home-newsletter__btn:hover {
	background: var(--color-accent-soft);
	border-color: var(--color-accent-soft);
}

.home-newsletter__msg {
	font-size: var(--fs-small);
	padding: 8px 12px;
	border-radius: var(--radius);
}

.home-newsletter__msg--ok {
	background: rgba(100, 180, 100, 0.1);
	color: #2e7d32;
}

.home-newsletter__msg--err {
	background: rgba(200, 60, 60, 0.1);
	color: #c0392b;
}

.posts-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--gap);
}

@media ( max-width: 960px ) {
	.hero-slide__inner {
		grid-template-columns: 1fr;
	}
	.hero-slide__deco { display: none; }
	.hero-slide { min-height: clamp(360px, 50vh, 560px); }

	.usp-band__grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.testimonials__head {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.cta-band__inner {
		flex-direction: column;
		text-align: center;
		align-items: center;
	}

	.inspiration__inner {
		grid-template-columns: 1fr;
	}

	.inspiration__products {
		grid-template-columns: repeat(3, 1fr);
	}

	.inspiration__products li:nth-child(2) {
		margin-top: 0;
	}

	.blog-preview__grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.posts-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

.woo-breadcrumb {
	margin-bottom: 24px;
}

.woo-breadcrumb ol {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px;
	gap: 6px;
	list-style: none;
}

.woo-breadcrumb li {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: var(--fs-small);
	color: var(--color-muted);
}

.woo-breadcrumb a {
	color: var(--color-muted);
	transition: color var(--dur) var(--ease);
}

.woo-breadcrumb a:hover {
	color: var(--color-accent);
}

.woo-breadcrumb li:last-child {
	color: var(--color-ink);
	font-weight: 500;
}

.shop-hero {
	padding-block: clamp(28px, 3vw, 44px);
}

.shop-hero__inner {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.shop-hero__title {
	font-size: var(--fs-h2);
	color: var(--color-ink);
}

.cat-hero {
	position: relative;
	padding-block: clamp(40px, 5vw, 72px);
	background: var(--color-bg-soft);
}

.cat-hero--has-image {
	background: var(--color-ink);
	background-image: var(--cat-hero-bg);
	background-size: cover;
	background-position: center;
	min-height: 260px;
}

.cat-hero__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.5);
}

.cat-hero__inner {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.cat-hero--has-image .woo-breadcrumb a,
.cat-hero--has-image .woo-breadcrumb li {
	color: rgba(255, 255, 255, 0.7);
}

.cat-hero--has-image .woo-breadcrumb li:last-child {
	color: #fff;
}

.cat-hero__title {
	font-size: var(--fs-h2);
	color: var(--color-ink);
}

.cat-hero--has-image .cat-hero__title {
	color: #fff;
}

.cat-hero__desc {
	font-size: 1rem;
	color: var(--color-muted);
	max-width: 540px;
}

.cat-hero--has-image .cat-hero__desc {
	color: rgba(255, 255, 255, 0.8);
}

.archive-shop__body {
	padding-block: clamp(32px, 4vw, 56px);
}

.shop-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding-bottom: 24px;
	border-bottom: 1px solid var(--color-border);
	margin-bottom: 32px;
	flex-wrap: wrap;
}

.woocommerce-result-count {
	font-size: var(--fs-small);
	color: var(--color-muted);
}

.woocommerce-ordering select {
	height: 40px;
	padding: 0 36px 0 14px;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	background: var(--color-bg);
	color: var(--color-ink);
	font-size: var(--fs-small);
	cursor: pointer;
	appearance: none;
	background-image: 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='%237A726B' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 12px center;
	transition: border-color var(--dur) var(--ease);
}

.woocommerce-ordering select:focus {
	outline: none;
	border-color: var(--color-accent);
}

.products-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--gap);
	list-style: none;
}

/* ---- Card blog injectat în grila de produse ---- */
.grid-blog-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 320px;
	border-radius: var(--radius);
	overflow: hidden;
}

.grid-blog-card__inner {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	flex: 1;
	padding: 20px;
	text-decoration: none;
	background-color: var(--color-ink);
	background-size: cover;
	background-position: center;
	border-radius: var(--radius);
	overflow: hidden;
}

.grid-blog-card__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(0,0,0,.7) 0%, rgba(0,0,0,.2) 55%, transparent 100%);
	pointer-events: none;
}

.grid-blog-card__badge {
	position: absolute;
	top: 12px;
	left: 12px;
	display: inline-block;
	padding: 3px 10px;
	background: var(--color-accent);
	color: #fff;
	font-family: var(--font-body);
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	border-radius: 100px;
}

.grid-blog-card__body {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.grid-blog-card__title {
	margin: 0;
	font-family: var(--font-heading);
	font-size: clamp(0.9375rem, 1.3vw, 1.0625rem);
	font-weight: 400;
	line-height: 1.3;
	color: #fff;
}

.grid-blog-card__cta {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-family: var(--font-body);
	font-size: 0.8125rem;
	font-weight: 700;
	color: #fff;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.grid-blog-card__cta::after {
	content: '→';
}

/* ---- Produs card wrapper ---- */
.product-card-wrap {
	display: flex;
}

.product-card-wrap .product-card {
	width: 100%;
}

.product-card__sale-pct {
	position: absolute;
	top: 12px;
	right: 12px;
	background: #e53935;
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	padding: 4px 8px;
	border-radius: var(--radius-pill);
}

.product-card__cart.added::after {
	content: ' ✓';
}

.btn--sm {
	padding: 10px 18px;
	font-size: 0.8125rem;
}

.woo-pagination {
	display: flex;
	justify-content: center;
	gap: 6px;
	flex-wrap: wrap;
	padding-top: 40px;
}

.woo-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	height: 40px;
	padding-inline: 6px;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-pill);
	font-size: var(--fs-small);
	font-weight: 500;
	color: var(--color-ink);
	transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease);
}

.woo-pagination .page-numbers:hover {
	border-color: var(--color-accent);
	color: var(--color-accent);
}

.woo-pagination .page-numbers.current {
	background: var(--color-accent);
	border-color: var(--color-accent);
	color: #fff;
}

.woo-pagination .page-numbers.prev,
.woo-pagination .page-numbers.next {
	min-width: 64px;
	padding-inline: 20px;
}

.single-product-page {
	padding-block: 0;
	overflow-x: hidden;
}

.single-product-wrap {
	width: 100%;
	max-width: 100%;
}

.single-product-main {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: clamp(24px, 3vw, 40px);
	align-items: start;
	width: 100%;
	max-width: var(--container);
	margin-inline: auto;
	padding-inline: var(--gap);
	margin-bottom: 0;
	box-sizing: border-box;
}

.sp-gallery-premium {
	position: relative;
	background: #fff;
	padding: clamp(28px, 4vw, 48px) clamp(16px, 2vw, 24px);
	padding-left: max(var(--gap), calc((100vw - var(--container)) / 2 + var(--gap)));
	margin-left: calc(-1 * max(var(--gap), calc((100vw - var(--container)) / 2 + var(--gap))) + var(--gap));
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.sp-gallery-premium .woocommerce-product-gallery {
	position: relative;
	width: 100%;
	max-width: min(720px, 100%);
	margin-inline: auto;
}

.sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav {
	list-style: none;
	margin: 0;
	padding: 0;
}

.sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav a {
	position: absolute;
	top: 50%;
	z-index: 6;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 40px;
	margin-top: -20px;
	padding: 0;
	background: rgba(255, 255, 255, 0.45);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	color: var(--color-ink);
	text-decoration: none;
	border: 1px solid rgba(51, 47, 44, 0.14);
	border-radius: var(--radius-pill);
	box-shadow: 0 4px 20px rgba(51, 47, 44, 0.06);
	opacity: 1;
	transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease), opacity var(--dur) var(--ease);
}

.sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav a svg {
	width: 18px;
	height: 18px;
	stroke-width: 1.5;
}

.sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav a:hover {
	background: rgba(255, 255, 255, 0.72);
	border-color: rgba(51, 47, 44, 0.22);
	color: var(--color-ink);
}

.sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav .flex-prev {
	left: 12px;
}

.sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav .flex-next {
	right: 12px;
}

.sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav .flex-disabled {
	opacity: 0.3;
	cursor: default;
}

.sp-gallery-premium .flex-viewport {
	overflow: hidden;
	background: transparent;
	padding: 0;
	border: none;
}

.sp-gallery-premium .woocommerce-product-gallery__image {
	display: flex;
	align-items: center;
	justify-content: center;
}

.sp-gallery-premium .woocommerce-product-gallery__image img {
	width: 100%;
	height: auto;
	max-height: min(62vh, 640px);
	object-fit: contain;
	margin-inline: auto;
}

.sp-gallery-premium .woocommerce-product-gallery__trigger {
	position: absolute;
	top: 8px;
	right: 8px;
	z-index: 10;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, 0.92);
	border: none;
	border-radius: 50%;
	color: var(--color-ink);
	transition: background var(--dur) var(--ease), color var(--dur) var(--ease);
}

.sp-gallery-premium .woocommerce-product-gallery__trigger:hover {
	background: var(--color-accent);
	color: #fff;
}

.sp-gallery-premium .flex-control-thumbs {
	display: flex;
	flex-wrap: nowrap;
	gap: 8px;
	margin: 16px auto 0;
	padding-bottom: 2px;
	list-style: none;
	max-width: min(720px, 100%);
	width: 100%;
	overflow-x: auto;
	scrollbar-width: thin;
}

.sp-gallery-premium .flex-control-thumbs li {
	flex: 0 0 96px;
	width: 96px;
}

.sp-gallery-premium .flex-control-thumbs li img {
	width: 96px;
	height: 96px;
	object-fit: cover;
	cursor: pointer;
	border: none;
	opacity: 0.5;
	transition: opacity var(--dur) var(--ease);
}

.sp-gallery-premium .flex-control-thumbs li img.flex-active {
	opacity: 1;
}

.single-product-info {
	padding: clamp(32px, 5vw, 56px) 0;
	align-self: start;
	position: sticky;
	top: 96px;
	min-width: 0;
}

.single-product-info .product_title {
	font-size: var(--fs-h2);
	font-family: var(--font-heading);
	color: var(--color-ink);
	margin-bottom: 10px;
}

.sp-breadcrumb {
	margin: 0 0 12px;
}

.sp-breadcrumb__list {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	gap: 0;
	list-style: none;
	margin: 0;
	padding: 0;
	overflow: hidden;
}

.sp-breadcrumb__list li {
	display: inline-flex;
	align-items: center;
	font-size: 0.75rem;
	color: var(--color-muted);
	white-space: nowrap;
	flex-shrink: 0;
	min-width: 0;
}

.sp-breadcrumb__list li:last-child {
	flex-shrink: 1;
	overflow: hidden;
	text-overflow: ellipsis;
	color: var(--color-ink);
}

.sp-breadcrumb__list li + li::before {
	content: '›';
	margin: 0 7px;
	opacity: 0.4;
	flex-shrink: 0;
}

.sp-breadcrumb__list a {
	color: inherit;
	text-decoration: none;
	transition: color var(--dur) var(--ease);
}

.sp-breadcrumb__list a:hover {
	color: var(--color-accent);
}

.single-product-info .woocommerce-product-rating {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 16px;
}

.single-product-info .woocommerce-review-link {
	font-size: var(--fs-small);
	color: var(--color-muted);
	transition: color var(--dur) var(--ease);
}

.single-product-info .woocommerce-review-link:hover {
	color: var(--color-accent);
}

.single-product-info .price {
	font-size: 1.6rem;
	font-weight: 700;
	color: var(--color-ink);
	margin-bottom: 20px;
}

.single-product-info .price del {
	font-size: 1.1rem;
	font-weight: 400;
	color: var(--color-muted);
	margin-right: 8px;
}

.single-product-info .price ins {
	text-decoration: none;
	color: var(--color-accent);
}

.single-product-info .woocommerce-product-details__short-description {
	font-size: 0.9375rem;
	color: var(--color-muted);
	line-height: var(--lh-body);
	margin-bottom: 12px;
}

.woocommerce-product-details__short-description.sp-desc-collapsed {
	max-height: 130px;
	overflow: hidden;
	position: relative;
	margin-bottom: 0;
}

.woocommerce-product-details__short-description.sp-desc-collapsed::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 48px;
	background: linear-gradient(to bottom, transparent, var(--color-bg));
	pointer-events: none;
}

.sp-read-more-btn {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	background: none;
	border: none;
	padding: 0;
	margin-bottom: 12px;
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--color-accent);
	cursor: pointer;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.sp-read-more-btn:hover {
	opacity: .8;
}

.single-product-info .cart {
	display: flex;
	gap: 12px;
	align-items: center;
	margin-bottom: 16px;
}

.sp-fbt-outer {
	max-width: var(--container);
	margin-inline: auto;
	padding-inline: var(--gap);
	box-sizing: border-box;
}

.sp-fbt {
	margin: 20px 0 8px;
	padding: 20px;
	border: 1px solid var(--color-border);
	border-radius: 8px;
	background: var(--color-bg);
	overflow: hidden;
	transform: translateZ(0);
}

.sp-fbt__title {
	font-family: var(--font-heading);
	font-size: clamp(1.05rem, 1.6vw, 1.25rem);
	font-weight: 400;
	margin: 0 0 16px;
	color: var(--color-ink);
}

.sp-fbt__items {
	display: flex;
	align-items: stretch;
	gap: 10px;
	overflow-x: auto;
	padding-bottom: 4px;
	scrollbar-width: thin;
}

.sp-fbt__item {
	flex: 1 1 100px;
	min-width: 108px;
}

.sp-fbt__item--main {
	flex: 0 0 auto;
	min-width: 100px;
	max-width: 130px;
}

.sp-fbt__item-label {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	height: 100%;
	margin: 0;
	cursor: pointer;
	text-align: center;
}

.sp-fbt__check {
	width: 16px;
	height: 16px;
	accent-color: var(--color-accent);
	flex-shrink: 0;
}

.sp-fbt__check--main {
	opacity: 0.65;
}

.sp-fbt__plus {
	flex: 0 0 auto;
	align-self: center;
	font-size: 1.25rem;
	font-weight: 600;
	color: var(--color-muted);
	line-height: 1;
}

.sp-fbt__thumb {
	display: block;
	width: 100%;
	aspect-ratio: 1;
	background: var(--color-bg-soft);
	overflow: hidden;
}

.sp-fbt__img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.sp-fbt__info {
	display: flex;
	flex-direction: column;
	gap: 4px;
	width: 100%;
}

.sp-fbt__name {
	font-size: 0.6875rem;
	line-height: 1.35;
	color: var(--color-ink);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.sp-fbt__price {
	font-size: 0.75rem;
	font-weight: 600;
	color: var(--color-ink);
}

.sp-fbt__price del {
	color: var(--color-muted);
	font-weight: 400;
}

.sp-fbt__price ins {
	text-decoration: none;
}

.sp-fbt__footer {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px 16px;
	margin-top: 18px;
	padding-top: 16px;
	border-top: 1px solid var(--color-border);
}

.sp-fbt__total-wrap {
	margin: 0;
	font-size: 0.875rem;
	color: var(--color-muted);
	flex: 1 1 auto;
}

.sp-fbt__total {
	color: var(--color-ink);
	font-size: 1rem;
}

.sp-fbt__add-all {
	flex: 0 0 auto;
	min-height: 48px;
	padding-inline: 36px;
}

@media (max-width: 600px) {
	.sp-fbt__footer {
		flex-direction: column;
		align-items: center;
	}
}

.sp-fbt__notice {
	width: 100%;
	margin: 0;
	font-size: 0.8125rem;
	color: var(--color-accent-soft);
}

.sp-fbt__notice.is-error {
	color: #b3261e;
}

/* ── Slider / carousel mode (cross-sells > 3) ─────────────── */
.sp-fbt__carousel {
	display: flex;
	align-items: center;
	gap: 6px;
	flex: 1 1 auto;
	min-width: 0;
	overflow: hidden;
}

.sp-fbt__carousel-viewport {
	flex: 1 1 auto;
	min-width: 0;
	max-width: 100%;
	overflow: hidden;
	scroll-behavior: smooth;
}

.sp-fbt__carousel-track {
	display: flex;
	gap: 10px;
	touch-action: pan-x;
}

.sp-fbt__nav {
	flex-shrink: 0;
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--color-ink);
	border: none;
	border-radius: 50%;
	font-size: 1.25rem;
	line-height: 0;
	padding-bottom: 1px;
	color: #fff;
	cursor: pointer;
	transition: background .15s;
}

.sp-fbt__nav:hover {
	background: var(--color-accent);
}

.sp-fbt__nav:disabled {
	opacity: .35;
	cursor: default;
	pointer-events: none;
}

/* Slider mode desktop: thumb pătrat, umple lățimea itemului (JS setează lățimea) */
.sp-fbt[data-slider="1"] .sp-fbt__items {
	align-items: center;
}

.sp-fbt[data-slider="1"] .sp-fbt__thumb {
	width: 100%;
	aspect-ratio: 1;
	height: auto;
	max-height: 240px;
}

.sp-fbt[data-slider="1"] .sp-fbt__img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

/* ── Slider mode MOBILE: layout vertical ──────────────────── */
@media (max-width: 640px) {
	/* Wrap vertical, fără scroll orizontal */
	.sp-fbt[data-slider="1"] .sp-fbt__items {
		flex-wrap: wrap;
		align-items: stretch;
		gap: 8px;
		overflow-x: hidden;
	}

	/* Semnele "+" inline dispar pe mobile */
	.sp-fbt[data-slider="1"] .sp-fbt__items > .sp-fbt__plus {
		display: none;
	}

	/* Produsul principal: rând complet, layout orizontal compact */
	.sp-fbt[data-slider="1"] .sp-fbt__item--main {
		flex: 0 0 100%;
		max-width: 100%;
		min-width: 0;
	}

	.sp-fbt[data-slider="1"] .sp-fbt__item--main .sp-fbt__item-label {
		flex-direction: row;
		align-items: center;
		text-align: left;
		gap: 10px;
	}

	.sp-fbt[data-slider="1"] .sp-fbt__item--main .sp-fbt__thumb {
		width: 72px;
		height: 72px;
		aspect-ratio: unset;
		flex-shrink: 0;
		margin-inline: 0;
	}

	/* Carousel: rând complet */
	.sp-fbt[data-slider="1"] .sp-fbt__carousel {
		flex: 0 0 100%;
		min-width: 0;
	}

	/* Butoane nav ascunse pe mobile — scroll nativ CSS */
	.sp-fbt[data-slider="1"] .sp-fbt__nav {
		display: none;
	}

	.sp-fbt[data-slider="1"] .sp-fbt__carousel-viewport {
		overflow-x: scroll;
		scroll-snap-type: x mandatory;
		overscroll-behavior-x: contain;
		scrollbar-width: none;
		width: 100%;
	}

	.sp-fbt[data-slider="1"] .sp-fbt__carousel-viewport::-webkit-scrollbar {
		display: none;
	}

	.sp-fbt[data-slider="1"] .sp-fbt__carousel .sp-fbt__item {
		scroll-snap-align: start;
	}

	/* Thumb în carousel pe mobile: pătrat relativ la lățimea itemului */
	.sp-fbt[data-slider="1"] .sp-fbt__carousel .sp-fbt__thumb {
		width: 140px;
		height: 140px;
		aspect-ratio: unset;
		margin-inline: auto;
	}

	/* Gift row: rând complet */
	.sp-fbt[data-slider="1"] .sp-fbt__gift-row {
		flex: 0 0 100%;
		min-width: 0;
	}

	.sp-fbt[data-slider="1"] .sp-fbt__gift-row > .sp-fbt__plus {
		display: none;
	}

	/* Gift item pe mobile: lățime completă, layout orizontal */
	.sp-fbt[data-slider="1"] .sp-fbt__item--gift {
		flex: 0 0 100%;
		width: 100%;
		max-width: 100%;
		flex-direction: row;
		align-items: center;
		gap: 12px;
		padding: 30px 12px 12px;
		position: relative;
	}

	.sp-fbt[data-slider="1"] .sp-fbt__gift-ribbon {
		position: absolute;
		top: 8px;
		left: 12px;
	}

	/* Thumb cadou pe mobile: dimensiune fixă, aliniat stânga */
	.sp-fbt[data-slider="1"] .sp-fbt__thumb--gift {
		width: 80px !important;
		height: 80px !important;
		aspect-ratio: unset !important;
		max-height: 80px !important;
		flex-shrink: 0;
		margin-inline: 0;
	}

	.sp-fbt[data-slider="1"] .sp-fbt__item--gift .sp-fbt__info {
		flex: 1;
		min-width: 0;
	}
}

/* Rândul cu produsul cadou în slider mode */
.sp-fbt__gift-row {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-shrink: 0;
}

/* Produsul cadou */
.sp-fbt__item--gift {
	flex: 0 0 120px;
	min-width: 120px;
	max-width: 120px;
	position: relative;
	background: #fffdf7;
	border: 1px dashed var(--color-accent);
	padding: 8px 6px 6px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
}

.sp-fbt__gift-ribbon {
	display: inline-block;
	background: var(--color-accent);
	color: #fff;
	font-size: .6rem;
	font-weight: 700;
	letter-spacing: .08em;
	padding: 2px 7px;
	border-radius: var(--radius-pill, 999px);
	text-transform: uppercase;
	line-height: 1.6;
}

.sp-fbt__thumb--gift {
	background: transparent;
}

.sp-fbt__gift-cond {
	display: block;
	font-size: .62rem;
	color: var(--color-muted);
	font-style: italic;
	line-height: 1.3;
	margin-top: 2px;
}

.sp-fbt__price--gift del {
	color: var(--color-muted);
	font-weight: 400;
	font-size: .68rem;
}

.sp-fbt__price--gift ins {
	text-decoration: none;
	color: #4a7c59;
	font-weight: 700;
}

/* Badge promo „Produs cadou" / discount */
.sp-fbt__promo-badge {
	width: fit-content;
	max-width: 100%;
	margin: 6px 0 0;
	padding: 5px 14px;
	background: #f5f0e8;
	border-left: 3px solid var(--color-accent);
	border-radius: 0 var(--radius-sm, 8px) var(--radius-sm, 8px) 0;
	font-size: .8125rem;
	color: var(--color-ink);
	font-style: italic;
}

/* Buton WhatsApp sub add-to-cart (single product) — compact, aliniat stânga */
.sp-whatsapp-btn {
	display: flex; /* block-level: pe rând propriu, nu inline lângă „Citește mai mult" */
	align-self: flex-start; /* nu se întinde pe toată lățimea în containerul flex-column */
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: fit-content; /* compact — cât conținutul, nu full width */
	max-width: 100%;
	clear: both;
	box-sizing: border-box;
	margin: 18px 0;
	padding: 10px 20px;
	border: 1.5px solid #25d366;
	border-radius: var(--radius-pill);
	background: #25d366;
	color: #fff;
	font-size: 0.85rem;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease), transform var(--dur) var(--ease);
}

.sp-whatsapp-btn:hover,
.sp-whatsapp-btn:focus-visible {
	background: #1eb85a;
	border-color: #1eb85a;
	color: #fff;
	transform: translateY(-1px);
}

.sp-whatsapp-btn svg {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
}

.sp-benefits {
	list-style: none;
	margin: 28px 0 24px;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.sp-benefit {
	display: flex;
	align-items: center;
	gap: 10px;
}

.sp-benefit__icon {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--color-accent);
}

.sp-benefit__icon svg {
	display: block;
	width: 16px;
	height: 16px;
}

.sp-benefit__text {
	font-size: 0.8125rem;
	line-height: 1.45;
	color: var(--color-muted);
}

/* Quantity stepper (+ / −) */
.qty-stepper {
	display: inline-flex;
	align-items: center;
	height: 52px;
	border: 1.5px solid var(--color-border);
	border-radius: var(--radius-pill);
	overflow: hidden;
	background: #fff;
	flex-shrink: 0;
}

.qty-stepper__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 52px;
	padding: 0;
	background: var(--color-bg-soft);
	border: none;
	font-size: 1.25rem;
	line-height: 1;
	color: var(--color-ink);
	cursor: pointer;
	transition: background var(--dur) var(--ease), color var(--dur) var(--ease);
	flex-shrink: 0;
}

.qty-stepper__btn:hover {
	background: var(--color-accent);
	color: #fff;
}

.qty-stepper .qty,
.qty-stepper input.qty,
.qty-stepper input.input-text.qty {
	width: 56px !important;
	min-width: 56px;
	height: 52px !important;
	padding: 0 !important;
	text-align: center;
	font-family: var(--font-body);
	font-size: 1rem;
	font-weight: 600;
	color: var(--color-ink);
	background: #fff !important;
	border: none !important;
	border-left: 1px solid var(--color-border) !important;
	border-right: 1px solid var(--color-border) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	-moz-appearance: textfield;
}

.qty-stepper .qty::-webkit-outer-spin-button,
.qty-stepper .qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.single-product-info .quantity {
	display: flex;
	align-items: center;
}

.single-product-info .single_add_to_cart_button,
.single-product-info .button.single_add_to_cart_button {
	flex: 1;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	height: 52px !important;
	min-height: 52px;
	padding: 0 28px !important;
	font-family: var(--font-body) !important;
	font-size: 0.875rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.3px;
	text-transform: uppercase;
	color: #fff !important;
	background: var(--color-accent) !important;
	border: 1px solid var(--color-accent) !important;
	border-radius: var(--radius-pill) !important;
	box-shadow: none !important;
	cursor: pointer;
	transition: background var(--dur) var(--ease), color var(--dur) var(--ease);
}

.single-product-info .single_add_to_cart_button:hover,
.single-product-info .button.single_add_to_cart_button:hover {
	background: transparent !important;
	color: var(--color-accent) !important;
}

/* Bindweb MP Calculator — pe produsele cu simulator (plăci flexibile) form.cart
   e flex-row și înghesuie simulatorul lângă buton. Le punem pe rânduri separate:
   simulator (full width) → buton → BNPL tbi. Scoped cu :has ca să NU afecteze
   produsele normale. */
.single-product-info .cart:has(.bwmp-wrap) {
	flex-wrap: wrap;
	align-items: stretch;
	row-gap: 14px;
}

.single-product-info .cart:has(.bwmp-wrap) .bwmp-wrap,
.single-product-info .cart:has(.bwmp-wrap) .single_add_to_cart_button,
.single-product-info .cart:has(.bwmp-wrap) .button.single_add_to_cart_button,
.single-product-info .cart:has(.bwmp-wrap) .tbi_button_container2 {
	flex: 1 1 100%;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
}

.single-product-info .cart:has(.bwmp-wrap) .bwmp-wrap {
	margin-bottom: 2px;
}

.single-product-info .product_meta {
	font-size: var(--fs-small);
	color: var(--color-muted);
	border-top: 1px solid var(--color-border);
	padding-top: 20px;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.single-product-info .product_meta a {
	color: var(--color-ink);
	transition: color var(--dur) var(--ease);
}

.single-product-info .product_meta a:hover {
	color: var(--color-accent);
}

.single-product-wrap .onsale,
.single-product-wrap span.onsale {
	display: none !important;
}

.sp-gallery-badges {
	position: absolute;
	top: clamp(20px, 3vw, 32px);
	left: max(var(--gap), calc((100vw - var(--container)) / 2 + var(--gap)));
	z-index: 4;
	display: flex;
	flex-direction: column;
	gap: 6px;
	pointer-events: none;
}

.sp-head {
	margin-bottom: 10px;
}

.sp-cat {
	display: inline-block;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--color-accent);
	text-decoration: none;
	transition: color var(--dur) var(--ease);
}

.sp-cat:hover {
	color: var(--color-ink);
}

.sp-actions-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 20px;
	margin-bottom: 22px;
	padding-top: 4px;
}

.sp-action-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0;
	background: none;
	border: none;
	font-family: var(--font-body);
	font-size: 0.8125rem;
	font-weight: 600;
	color: var(--color-ink);
	cursor: pointer;
	transition: color var(--dur) var(--ease);
}

.sp-action-btn svg {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
}

.sp-action-btn:hover {
	color: var(--color-accent);
}

.sp-action-btn--wish.is-active {
	color: var(--color-accent);
}

.sp-action-btn--wish.is-active svg {
	fill: var(--color-accent);
	stroke: var(--color-accent);
}

.sp-action-btn--compare.is-active {
	color: var(--color-accent);
}

.sp-meta-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 16px;
	margin-bottom: 16px;
}

.sp-meta-row__sku {
	font-size: 0.8125rem;
	color: var(--color-muted);
}

.sp-stock-badge {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 5px 12px;
	border-radius: var(--radius-pill);
	font-size: 0.75rem;
	font-weight: 600;
}

.sp-stock-badge__dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	flex-shrink: 0;
}

.sp-stock-badge--in {
	background: rgba(46, 125, 50, 0.1);
	color: #2e7d32;
}

.sp-stock-badge--in .sp-stock-badge__dot {
	background: #2e7d32;
}

.sp-stock-badge--out {
	background: rgba(51, 47, 44, 0.06);
	color: var(--color-muted);
}

.sp-stock-badge--out .sp-stock-badge__dot {
	background: var(--color-muted);
}

.sp-delivery-note {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: -8px 0 20px;
	font-size: 0.8125rem;
	font-weight: 600;
	color: var(--color-ink);
}

.sp-delivery-note svg {
	flex-shrink: 0;
	color: var(--color-accent);
}

.sp-outofstock {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	margin-bottom: 24px;
	padding: clamp(20px, 3vw, 26px);
	background: var(--color-bg-soft);
	border: 1px solid rgba(51, 47, 44, 0.06);
}

.sp-outofstock__icon {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: rgba(149, 120, 82, 0.08);
	color: var(--color-accent);
}

.sp-outofstock__icon svg {
	width: 20px;
	height: 20px;
}

.sp-outofstock__body {
	flex: 1;
	min-width: 0;
}

.sp-outofstock__badge {
	display: inline-flex;
	align-items: center;
	margin-bottom: 10px;
	padding: 5px 12px;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--color-muted);
	background: var(--color-bg-soft);
	border-radius: var(--radius-pill);
}

.sp-outofstock__title {
	margin: 0 0 8px;
	font-family: var(--font-heading);
	font-size: clamp(1.125rem, 2vw, 1.3125rem);
	color: var(--color-ink);
	line-height: 1.25;
}

.sp-outofstock__desc {
	margin: 0 0 20px;
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--color-muted);
}

.sp-outofstock__cta.btn {
	display: inline-flex;
	justify-content: center;
	min-width: min(100%, 260px);
	padding: 14px 28px;
	background: var(--color-accent);
	border-color: var(--color-accent);
	color: #fff;
}

.sp-outofstock__cta.btn:hover {
	background: var(--color-accent-soft);
	border-color: var(--color-accent-soft);
	color: #fff;
}

.sp-outofstock__cta.btn svg {
	flex-shrink: 0;
}

.sp-tabs-wrap {
	padding-top: clamp(24px, 3vw, 36px);
	padding-bottom: clamp(16px, 2vw, 24px);
	overflow-x: hidden;
}

.single-product-tabs {
	padding-top: 0;
}

.single-product-info .product_meta {
	display: none;
}

.wc-tabs-wrapper {
	margin-bottom: clamp(16px, 2vw, 24px);
}

.wc-tabs-nav-wrap {
	display: flex;
	justify-content: center;
	overflow: hidden;
	margin-bottom: clamp(24px, 3vw, 36px);
}

.wc-tabs-nav {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	gap: 8px;
	min-width: 0;
	max-width: 100%;
	margin: 0;
	padding: 0;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scrollbar-width: none;
}

.wc-tabs-nav::-webkit-scrollbar {
	display: none;
}

.wc-tab-btn {
	padding: 9px clamp(22px, 3.5vw, 36px);
	font-family: var(--font-heading);
	font-size: 0.9375rem;
	font-weight: 400;
	color: var(--color-muted);
	background: transparent;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-pill);
	white-space: nowrap;
	cursor: pointer;
	transition: color var(--dur) var(--ease), background var(--dur) var(--ease), border-color var(--dur) var(--ease);
}

.wc-tab-btn:hover {
	color: var(--color-ink);
	border-color: var(--color-ink);
}

.wc-tab-btn.is-active {
	color: #fff;
	background: var(--color-accent);
	border-color: var(--color-accent);
}

.wc-tab-panel {
	color: var(--color-ink);
	overflow-x: hidden;
}

.wc-tab-panel:not(.is-active) {
	display: none;
}

.wc-tab-panel.is-active {
	display: block;
}

.wc-tab-panel__inner {
	max-width: 40rem;
	margin: 0 auto;
	padding: 0 clamp(12px, 2vw, 20px);
	overflow-x: hidden;
	overflow-wrap: break-word;
	word-break: break-word;
}

.wc-tab-panel--description .wc-tab-panel__inner {
	max-width: 100%;
}

.wc-tab-panel--additional_information .wc-tab-panel__inner {
	max-width: min(52rem, 100%);
}

.wc-tab-panel--reviews {
	transform: translateZ(0);
}

.wc-tab-panel--reviews .wc-tab-panel__inner {
	max-width: 40rem;
}

.sp-review-form .comment-form-rating:not(.form-field--rating) {
	display: none;
}

.sp-tab-empty {
	margin: 0;
	padding: 12px 0 4px;
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--color-muted);
	text-align: center;
}

.sp-tab-prose {
	font-size: 1.0625rem;
	line-height: 1.8;
	color: var(--color-ink);
}

.sp-tab-prose > :first-child {
	margin-top: 0;
}

.sp-tab-prose > :last-child {
	margin-bottom: 0;
}

.sp-tab-prose h2,
.sp-tab-prose h3,
.sp-tab-prose h4 {
	font-family: var(--font-heading);
	font-weight: 400;
	color: var(--color-ink);
	line-height: 1.3;
}

.sp-tab-prose h2 {
	font-size: clamp(1.25rem, 2.2vw, 1.5rem);
	margin: 2.25em 0 0.85em;
}

.sp-tab-prose h3 {
	font-size: clamp(1.125rem, 1.8vw, 1.3125rem);
	margin: 2em 0 0.75em;
}

.sp-tab-prose h4 {
	font-size: 1.0625rem;
	margin: 1.75em 0 0.65em;
}

.sp-tab-prose p {
	margin: 0 0 1.35em;
}

.sp-tab-prose p:empty,
.sp-tab-prose p > br:only-child {
	display: none;
}

.sp-tab-prose ul,
.sp-tab-prose ol {
	margin: 0 0 1.5em;
	padding: 0;
	list-style: none;
}

.sp-tab-prose ul li,
.sp-tab-prose ol li {
	position: relative;
	padding-left: 1.35em;
	margin-bottom: 0.75em;
}

.sp-tab-prose ul li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0.72em;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: var(--color-accent);
}

.sp-tab-prose ol {
	counter-reset: sp-tab-ol;
}

.sp-tab-prose ol li {
	counter-increment: sp-tab-ol;
}

.sp-tab-prose ol li::before {
	content: counter(sp-tab-ol) '.';
	position: absolute;
	left: 0;
	top: 0;
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--color-accent);
}

.sp-tab-prose hr {
	border: none;
	height: 0;
	margin: 2.5em 0;
}

.sp-tab-prose strong {
	color: var(--color-ink);
	font-weight: 600;
}

.sp-tab-prose a {
	color: var(--color-accent);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.sp-tab-prose a:hover {
	color: var(--color-ink);
}

.sp-tab-prose img {
	display: block;
	max-width: 100%;
	height: auto;
	margin: 2em auto;
}

.sp-tab-specs {
	display: flex;
	justify-content: center;
}

.sp-specs-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	overflow: hidden;
	background: var(--color-bg);
	font-size: 0.9375rem;
	line-height: 1.5;
}

.sp-specs-table th,
.sp-specs-table td {
	padding: 15px 20px;
	text-align: left;
	border-bottom: 1px solid var(--color-border);
	vertical-align: middle;
}

.sp-specs-table tr:last-child th,
.sp-specs-table tr:last-child td {
	border-bottom: none;
}

.sp-specs-table tr:nth-child(even) th,
.sp-specs-table tr:nth-child(even) td {
	background: var(--color-bg-soft);
}

.sp-specs-table th {
	width: 38%;
	padding-right: 16px;
	color: var(--color-ink);
	font-family: var(--font-body);
	font-weight: 600;
	font-size: 0.875rem;
	letter-spacing: 0.01em;
}

.sp-specs-table td {
	color: var(--color-muted);
}

.sp-specs-table td a {
	color: var(--color-muted);
	text-decoration: none;
}

.sp-specs-table td a:hover {
	color: var(--color-accent);
}

.sp-reviews {
	display: flex;
	flex-direction: column;
	gap: clamp(28px, 4vw, 40px);
}

.sp-reviews__summary {
	display: flex;
	justify-content: center;
}

.sp-reviews__summary-score {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px 14px;
	max-width: 100%;
}

.sp-reviews__summary-avg {
	font-family: var(--font-heading);
	font-size: 2.25rem;
	line-height: 1;
	color: var(--color-ink);
}

.sp-reviews__summary-stars {
	display: flex;
	align-items: center;
	gap: 2px;
}

.sp-reviews__summary-count {
	font-size: var(--fs-small);
	color: var(--color-muted);
	white-space: nowrap;
}

.sp-reviews__intro {
	text-align: center;
}

.sp-reviews__intro-text {
	margin: 0;
	font-size: 1rem;
	line-height: 1.65;
	color: var(--color-muted);
}

.sp-reviews__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.sp-reviews .avatar,
.sp-reviews img.avatar,
.sp-reviews .star-rating {
	display: none !important;
}

.sp-review-item {
	padding: 0;
	margin: 0;
	border: none;
}

.sp-review-item__inner {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin: 0;
	padding: 0;
	background: none;
	border: none;
}

.sp-review-stars {
	display: inline-flex;
	align-items: center;
	gap: 1px;
}

.sp-review-item__body .description {
	margin: 0;
}

.sp-review-item__body .description p {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.65;
	color: var(--color-ink);
}

.sp-review-item__footer {
	margin: 0;
	padding-top: 2px;
}

.sp-review-item__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	margin: 0;
	font-size: 0.8125rem;
	line-height: 1.4;
	color: var(--color-muted);
}

.sp-review-item__meta--pending {
	font-style: italic;
}

.sp-review-item__author {
	font-style: normal;
	font-weight: 500;
	color: var(--color-muted);
}

.sp-review-item__verified {
	font-size: 0.6875rem;
	font-weight: 600;
	color: var(--color-accent);
}

.sp-review-item__sep {
	opacity: 0.4;
}

.sp-review-item__date {
	color: var(--color-muted);
}

.sp-reviews .comment-text {
	margin: 0;
	padding: 0;
	border: none;
	background: none;
}

.sp-reviews--has-list .sp-reviews__form-block {
	padding-top: clamp(28px, 4vw, 40px);
	margin-top: 4px;
	border-top: 1px solid rgba(51, 47, 44, 0.06);
}

.sp-reviews__form-block {
	width: 100%;
}

.sp-reviews__form-title {
	display: block;
	font-family: var(--font-heading);
	font-size: clamp(1.125rem, 2vw, 1.3125rem);
	font-weight: 400;
	color: var(--color-ink);
	margin: 0 0 22px;
	text-align: center;
}

.sp-reviews--empty .sp-reviews__form-title {
	margin-bottom: 24px;
}

.sp-review-form.contact-form {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px 20px;
	max-width: 560px;
	margin: 0 auto;
}

.sp-review-form .comment-reply-title,
.sp-review-form .comment-form-rating,
.sp-review-form .comment-form-comment,
.sp-review-form .contact-form__submit,
.sp-review-form .must-log-in {
	grid-column: 1 / -1;
}

.sp-review-form .comment-form-cookies-consent {
	display: none;
}

.form-field.comment-form-author,
.form-field.comment-form-email {
	padding-top: 20px;
}

.sp-review-form .contact-form__submit {
	margin-top: 20px;
}

.sp-review-form .contact-form__submit .form-submit {
	margin: 0;
}

.sp-review-form .form-field--rating select#rating {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.sp-review-form p.stars {
	margin: 0;
	line-height: 1;
}

.sp-review-form p.stars span {
	display: inline-flex;
	gap: 4px;
}

.sp-review-form p.stars a {
	position: relative;
	width: 28px;
	height: 28px;
	font-size: 28px;
	text-indent: -999em;
	text-decoration: none;
}

.sp-review-form p.stars a::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 28px;
	height: 28px;
	line-height: 28px;
	font-family: WooCommerce, star, sans-serif;
	color: var(--color-border);
	text-indent: 0;
}

.sp-review-form p.stars:hover a::before {
	color: var(--color-accent);
}

.sp-review-form p.stars a:hover ~ a::before {
	color: var(--color-border);
}

.sp-review-form p.stars.selected a.active::before,
.sp-review-form p.stars.selected a:not(.active)::before {
	color: var(--color-accent);
}

.sp-review-form p.stars.selected a.active ~ a::before {
	color: var(--color-border);
}

/* ---- Star input SVG personalizat (câmpul de evaluare din formular) ---- */
.sp-star-input {
	display: flex;
	flex-direction: row-reverse;
	justify-content: flex-end;
	align-items: center;
	gap: 4px;
	margin-top: 10px;
	margin-bottom: 20px;
}

.sp-star-input__radio {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.sp-star-input .sp-star-input__label {
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	color: var(--color-border);
	transition: color 0.15s var(--ease);
	-webkit-tap-highlight-color: transparent;
}

.sp-star-input__label svg {
	width: 28px;
	height: 28px;
	display: block;
	pointer-events: none;
}

/* Stare selectată */
.sp-star-input__radio:checked + .sp-star-input__label,
.sp-star-input__radio:checked + .sp-star-input__label ~ .sp-star-input__label {
	color: var(--color-accent);
}

/* Hover: resetează toate la gri, aplică auriu pentru steaua hover și cele cu valori mai mici */
.sp-star-input:hover .sp-star-input__label {
	color: var(--color-border);
}
.sp-star-input:hover .sp-star-input__label:hover,
.sp-star-input:hover .sp-star-input__label:hover ~ .sp-star-input__label {
	color: var(--color-accent);
}

/* Focus tastatură */
.sp-star-input__radio:focus-visible + .sp-star-input__label {
	outline: 2px solid var(--color-accent);
	border-radius: 3px;
	outline-offset: 2px;
}

/* Text hint (apare la dreapta stelelor) */
.sp-star-input__hint {
	order: -1;
	font-size: 0.8125rem;
	color: var(--color-muted);
	margin-left: 8px;
	font-style: italic;
	white-space: nowrap;
}

.woocommerce #respond input#submit.btn,
.woocommerce #respond button#submit.btn {
	font-size: var(--fs-small);
	margin: 0;
	line-height: normal;
	padding: 14px 28px;
	font-family: var(--font-body);
	font-weight: 600;
	letter-spacing: 0.3px;
	text-transform: uppercase;
	border: 1px solid var(--color-accent);
	border-radius: var(--radius-pill);
	background: var(--color-accent);
	background-image: none;
	box-shadow: none;
	text-shadow: none;
	color: #fff;
	left: auto;
	overflow: visible;
	appearance: none;
	-webkit-appearance: none;
}

.woocommerce #respond input#submit.btn:hover,
.woocommerce #respond button#submit.btn:hover {
	background: transparent;
	color: var(--color-accent);
}

.sp-review-form .contact-form__submit .btn {
	min-width: 240px;
	justify-content: center;
}

.sp-reviews .must-log-in,
.sp-reviews__notice {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--color-muted);
	text-align: center;
}

.related-products,
.brand-products {
	padding-top: clamp(24px, 3vw, 36px);
	padding-bottom: clamp(40px, 5vw, 72px);
	margin-top: 0;
	background: transparent;
}

.brand-products {
	padding-top: 0;
}

.related-products__head,
.brand-products__head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: clamp(24px, 3vw, 36px);
}

.related-products__head .section-heading,
.brand-products__head .section-heading {
	margin-bottom: 0;
}

@media (max-width: 767px) {
	.related-products__head .section-heading,
	.brand-products__head .section-heading {
		font-size: 1.25rem;
	}
}

.brand-products__head-left {
	display: flex;
	flex-direction: column;
	gap: 8px;
	min-width: 0;
}

.brand-products__brand-link {
	font-size: var(--fs-small);
	font-weight: 600;
	color: var(--color-muted);
	text-decoration: underline;
	text-underline-offset: 3px;
	transition: color var(--dur) var(--ease);
}

.brand-products__brand-link:hover {
	color: var(--color-accent);
}

.related-products__nav,
.brand-products__nav {
	display: flex;
	gap: 8px;
	flex-shrink: 0;
}

.related-products__nav .related-swiper__prev,
.related-products__nav .related-swiper__next,
.brand-products__nav .brand-swiper__prev,
.brand-products__nav .brand-swiper__next {
	position: static;
	transform: none;
}

.related-products__swiper-wrap,
.brand-products__swiper-wrap {
	overflow: hidden;
	width: 100%;
}

.related-swiper,
.brand-swiper {
	overflow: hidden;
	padding-bottom: 36px;
}

.related-swiper .swiper-wrapper,
.brand-swiper .swiper-wrapper {
	align-items: stretch;
}

.related-swiper .swiper-slide,
.brand-swiper .swiper-slide {
	height: auto;
	display: flex;
	flex-direction: column;
}

.related-swiper .product-card-wrap,
.brand-swiper .product-card-wrap {
	display: flex;
	flex-direction: column;
	height: 100%;
	width: 100%;
}

@media ( max-width: 480px ) {
	.related-swiper .product-card__body,
	.brand-swiper .product-card__body {
		padding: 10px 10px 12px;
	}

	.related-swiper .product-card__title,
	.brand-swiper .product-card__title {
		font-size: 0.75rem;
	}

	.related-swiper .product-card__price,
	.brand-swiper .product-card__price {
		font-size: 0.8125rem;
	}

	.related-swiper .product-card__cart,
	.brand-swiper .product-card__cart {
		font-size: 0.625rem !important;
		padding: 7px 8px !important;
	}

	.related-swiper .product-card__cat,
	.brand-swiper .product-card__cat {
		font-size: 0.5625rem;
	}

	.related-swiper .product-card__actions,
	.brand-swiper .product-card__actions {
		display: none;
	}
}

.related-swiper__pagination,
.brand-swiper__pagination {
	position: relative;
	bottom: auto;
	margin-top: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.related-swiper__pagination .swiper-pagination-bullet,
.brand-swiper__pagination .swiper-pagination-bullet,
.cs-swiper__pagination .swiper-pagination-bullet {
	width: 8px;
	height: 8px;
	border-radius: 4px;
	background: var(--color-border);
	opacity: 1;
	transition: width var(--dur) var(--ease), background var(--dur) var(--ease);
}

.related-swiper__pagination .swiper-pagination-bullet-active,
.brand-swiper__pagination .swiper-pagination-bullet-active,
.cs-swiper__pagination .swiper-pagination-bullet-active {
	width: 28px;
	background: var(--color-accent);
}

/* ============================================================
   WOOCOMMERCE BASE
   Înlocuiește complet woocommerce.css (dezactivat via filtru în inc/enqueue.php).
   Controlul CSS aparține 100% temei.
   ============================================================ */

/* --- Accesibilitate: elemente doar pentru screen reader --- */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}

/* --- Reset global --- */
.woocommerce *,
.woocommerce-page * { box-sizing: border-box; }

.woocommerce img,
.woocommerce-page img { height: auto; max-width: 100%; }

.woocommerce,
.woocommerce-page { font-family: var(--font-body); color: var(--color-ink); }

/* --- Butoane WooCommerce --- */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce button.button.wp-element-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 11px 28px;
	background: var(--color-accent);
	color: #fff;
	border: none;
	border-radius: var(--radius-pill);
	font-family: var(--font-body);
	font-size: var(--fs-small);
	font-weight: 600;
	line-height: 1.4;
	cursor: pointer;
	text-decoration: none;
	transition: background var(--dur) var(--ease);
	box-shadow: none;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
	background: var(--color-accent-soft);
	color: #fff;
	text-decoration: none;
}

.woocommerce a.button.disabled,
.woocommerce button.button:disabled,
.woocommerce input.button:disabled { opacity: 0.5; cursor: not-allowed; }

/* --- Mesaje / Notificări --- */
.woocommerce-message,
.woocommerce-error,
.woocommerce-info {
	list-style: none;
	padding: 14px 20px;
	margin: 0 0 20px;
	border-radius: var(--radius);
	font-size: var(--fs-small);
	line-height: 1.55;
	clear: both;
}

.woocommerce-message::before,
.woocommerce-error li::before,
.woocommerce-info::before { display: none !important; }

.woocommerce-message {
	background: #f0fdf4;
	color: #15803d;
}

.woocommerce-error {
	background: #fef2f2;
	color: #b91c1c;
}

.woocommerce-info {
	background: var(--color-bg-soft);
	color: var(--color-muted);
}

.woocommerce-message a,
.woocommerce-info a { color: var(--color-accent); font-weight: 500; text-decoration: none; }
.woocommerce-message a:hover,
.woocommerce-info a:hover { text-decoration: underline; }

.woocommerce-info a.button,
.woocommerce-info .button {
	background: none !important;
	border: none !important;
	padding: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--color-accent) !important;
	font-weight: 600;
	font-size: inherit;
	text-decoration: none !important;
	cursor: pointer;
	display: inline;
}

/* --- Tabel comenzi / sumar --- */
.woocommerce table.shop_table,
.woocommerce-page table.shop_table {
	width: 100%;
	border-collapse: collapse;
	border: none;
	border-radius: 0;
	border-spacing: 0;
	margin: 0 0 24px;
	text-align: left;
	font-size: var(--fs-small);
}

.woocommerce table.shop_table th,
.woocommerce-page table.shop_table th {
	padding: 10px 12px;
	font-weight: 600;
	color: var(--color-muted);
	font-size: 0.8125rem;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	border-bottom: 2px solid var(--color-border);
	background: none;
}

.woocommerce table.shop_table td,
.woocommerce-page table.shop_table td {
	padding: 12px;
	border-bottom: 1px solid var(--color-border);
	vertical-align: middle;
	color: var(--color-ink);
	background: none;
}

.woocommerce table.shop_table td:last-child,
.woocommerce table.shop_table th:last-child {
	text-align: right;
}

/* --- Formular WooCommerce general --- */
.woocommerce form .form-row {
	padding: 0;
	margin: 0 0 16px;
}

/* În checkout, grid-ul cu gap: 16px gestionează spacing-ul; margin extra = prea aerat */
.woocommerce-checkout form .form-row {
	margin: 0;
	padding: 0;
}

.woocommerce form .form-row label {
	display: block;
	font-size: var(--fs-small);
	font-weight: 600;
	color: var(--color-ink);
	margin-bottom: 6px;
	line-height: 1.4;
}

.woocommerce form .form-row label .required {
	color: var(--color-accent);
	text-decoration: none;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row input[type="text"],
.woocommerce form .form-row input[type="email"],
.woocommerce form .form-row input[type="tel"],
.woocommerce form .form-row input[type="password"],
.woocommerce form .form-row input[type="number"],
.woocommerce form .form-row textarea {
	width: 100%;
	padding: 12px 20px;
	border: 1.5px solid var(--color-border);
	border-radius: var(--radius-pill);
	font-size: 0.9375rem;
	font-family: var(--font-body);
	color: var(--color-ink);
	background: var(--color-bg);
	transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
	box-shadow: none;
	height: auto;
	outline: none;
	line-height: 1.4;
	appearance: none;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row input[type="text"]:focus,
.woocommerce form .form-row input[type="email"]:focus,
.woocommerce form .form-row input[type="tel"]:focus,
.woocommerce form .form-row input[type="password"]:focus,
.woocommerce form .form-row textarea:focus {
	border-color: var(--color-accent);
	box-shadow: 0 0 0 3px rgba(149, 120, 82, 0.08);
	outline: none;
}

.woocommerce form .form-row textarea {
	border-radius: 4px;
	min-height: 100px;
	resize: vertical;
}

.woocommerce form .form-row.woocommerce-invalid input.input-text {
	border-color: #ef4444;
}

/* --- Quantity input --- */
.woocommerce .quantity {
	display: inline-flex;
	align-items: center;
	border: 1.5px solid var(--color-border);
	border-radius: var(--radius-pill);
	overflow: hidden;
	background: var(--color-bg);
}

.woocommerce .quantity input[type="number"] {
	width: 52px;
	height: 40px;
	padding: 0 8px;
	text-align: center;
	border: none;
	background: transparent;
	font-size: var(--fs-small);
	font-family: var(--font-body);
	color: var(--color-ink);
	font-weight: 500;
	-moz-appearance: textfield;
	appearance: textfield;
	outline: none;
}

.woocommerce .quantity input[type="number"]::-webkit-inner-spin-button,
.woocommerce .quantity input[type="number"]::-webkit-outer-spin-button {
	-webkit-appearance: none;
}

/* --- Stele rating --- */
.star-rating {
	overflow: hidden;
	position: relative;
	height: 1.1em;
	line-height: 1;
	font-size: 1em;
	width: 5.5em;
	display: inline-block;
	color: var(--color-accent-amber);
}

.star-rating span { overflow: hidden; position: absolute; top: 0; left: 0; }

.star-rating span::before,
.star-rating::before {
	content: '\2605\2605\2605\2605\2605';
	font-family: inherit;
	letter-spacing: 0.1em;
	display: block;
}

.star-rating::before { color: var(--color-border); }
.star-rating span::before { color: var(--color-accent-amber); }

/* --- Produs — meta, preț, badge-uri --- */
.woocommerce .woocommerce-product-rating { display: flex; align-items: center; gap: 8px; margin-bottom: 12px; }

.woocommerce .product_meta { font-size: var(--fs-small); color: var(--color-muted); margin-top: 20px; }
.woocommerce .product_meta > span { display: block; margin-bottom: 4px; }
.woocommerce .product_meta a { color: var(--color-accent); text-decoration: none; }
.woocommerce .product_meta a:hover { text-decoration: underline; }

.woocommerce .price del { opacity: 0.5; margin-right: 8px; }
.woocommerce .price ins { font-weight: 700; text-decoration: none; }
.woocommerce .price .amount { color: var(--color-ink); }

/* --- Tabs (pagina produs) --- */
.woocommerce div.product .woocommerce-tabs ul.tabs {
	display: flex;
	list-style: none;
	border-bottom: 2px solid var(--color-border);
	margin: 0 0 24px;
	padding: 0;
	gap: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	position: relative;
	padding: 0;
	margin: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	display: block;
	padding: 12px 20px;
	font-size: var(--fs-small);
	font-weight: 600;
	color: var(--color-muted);
	text-decoration: none;
	border-bottom: 2px solid transparent;
	margin-bottom: -2px;
	transition: color var(--dur) var(--ease), border-color var(--dur) var(--ease);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
	color: var(--color-accent);
	border-bottom-color: var(--color-accent);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
	color: var(--color-ink);
}

.woocommerce div.product .woocommerce-tabs .panel {
	padding: 24px 0;
	font-size: var(--fs-body);
	line-height: var(--lh-body);
	color: var(--color-ink);
}

/* --- Recenzii (pagina produs) --- */
#reviews { margin-top: 32px; }
#reviews h2 { font-family: var(--font-heading); font-size: var(--fs-h3); font-weight: 400; margin-bottom: 20px; }

.woocommerce #reviews ol.commentlist { list-style: none; padding: 0; }
.woocommerce #reviews ol.commentlist li.comment { border-bottom: 1px solid var(--color-border); padding: 20px 0; }
.woocommerce #reviews ol.commentlist li.comment:last-child { border-bottom: none; }
.woocommerce #reviews ol.commentlist li.comment .comment-text p.meta { font-size: 0.8125rem; color: var(--color-muted); margin-bottom: 8px; }
.woocommerce #reviews ol.commentlist li.comment .comment-text p.meta time { margin-left: 8px; opacity: 0.7; }

#review_form_wrapper { margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--color-border); }
#review_form_wrapper h3 { font-family: var(--font-heading); font-size: 1.1rem; font-weight: 400; margin-bottom: 16px; }

/* --- Pagina de cont (my-account) --- */
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li { border-bottom: 1px solid var(--color-border); }
.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
	display: block;
	padding: 10px 16px;
	color: var(--color-ink);
	font-size: var(--fs-small);
	text-decoration: none;
	transition: color var(--dur) var(--ease);
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
	color: var(--color-accent);
}

/* --- Tabel comenzi din cont --- */
.woocommerce-orders-table { width: 100%; border-collapse: collapse; }
.woocommerce-orders-table th { font-weight: 600; font-size: 0.8125rem; color: var(--color-muted); text-transform: uppercase; letter-spacing: 0.4px; padding: 8px 12px; border-bottom: 2px solid var(--color-border); }
.woocommerce-orders-table td { padding: 12px; border-bottom: 1px solid var(--color-border); font-size: var(--fs-small); vertical-align: middle; }
.woocommerce-orders-table .woocommerce-orders-table__cell-order-number a { color: var(--color-accent); font-weight: 600; }
.woocommerce-orders-table .wc-order-status { font-size: 0.75rem; font-weight: 600; padding: 3px 10px; border-radius: var(--radius-pill); display: inline-block; }

/* Status culori */
.woocommerce-orders-table .wc-order-status.status-processing { background: #eff6ff; color: #1d4ed8; }
.woocommerce-orders-table .wc-order-status.status-completed  { background: #f0fdf4; color: #15803d; }
.woocommerce-orders-table .wc-order-status.status-on-hold    { background: #fffbeb; color: #b45309; }
.woocommerce-orders-table .wc-order-status.status-cancelled  { background: #fef2f2; color: #b91c1c; }
.woocommerce-orders-table .wc-order-status.status-pending    { background: var(--color-bg-soft); color: var(--color-muted); }

/* --- Pagina order-received / thank you --- */
.woocommerce-order { max-width: 680px; margin: 0 auto; }
.woocommerce-order-details h2 { font-family: var(--font-heading); font-weight: 400; font-size: var(--fs-h3); margin-bottom: 16px; }
.woocommerce-customer-details { margin-top: 24px; }
.woocommerce-customer-details h2 { font-family: var(--font-heading); font-weight: 400; font-size: 1.1rem; margin-bottom: 12px; }
.woocommerce-customer-details address { line-height: 1.7; font-style: normal; color: var(--color-ink); }

/* --- Breadcrumb WooCommerce (suprascrie cu stilul temei dacă e nevoie) --- */
.woo-breadcrumb { font-size: 0.8125rem; color: var(--color-muted); margin-bottom: 20px; }
.woo-breadcrumb ol { display: flex; flex-wrap: wrap; list-style: none; gap: 0; }
.woo-breadcrumb li a { color: var(--color-muted); text-decoration: none; transition: color var(--dur) var(--ease); }
.woo-breadcrumb li a:hover { color: var(--color-accent); }

/* --- Flash / notices global wrapper --- */
.woocommerce-cart-form table,
.woocommerce-checkout-payment,
.woocommerce-account .woocommerce {
	font-size: 0.9375rem;
}

/* ---- WooCommerce notices — toast style ---- */
.woocommerce-notices-wrapper {
	position: fixed;
	bottom: 24px;
	left: 0;
	right: 0;
	margin: 0 auto;
	z-index: 9990;
	width: min(520px, calc(100% - 40px));
	pointer-events: none;
}

.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-info {
	pointer-events: auto;
	list-style: none;
	position: relative;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 36px 10px 20px;
	margin: 0 0 8px;
	border-radius: var(--radius-pill);
	border: none;
	outline: none;
	font-size: var(--fs-small);
	color: var(--color-ink);
	background: #fff;
	box-shadow: 0 2px 20px rgba(51, 47, 44, .15);
	animation: noticeIn .28s var(--ease) both;
}

.wc-notice-text {
	flex: 1;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.woocommerce-notices-wrapper .woocommerce-message.notice-hide {
	animation: noticeOut .28s var(--ease) forwards;
}

@keyframes noticeIn {
	from { opacity: 0; transform: translateY(10px); }
	to   { opacity: 1; transform: translateY(0); }
}

@keyframes noticeOut {
	from { opacity: 1; transform: translateY(0); }
	to   { opacity: 0; transform: translateY(10px); }
}

.wc-notice-icon {
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 11px;
	font-weight: 700;
	color: #fff;
}

.wc-notice-icon--success { background: #2e7d32; }
.wc-notice-icon--error   { background: #c0392b; }
.wc-notice-icon--info    { background: var(--color-accent); font-style: italic; }

.woocommerce-notices-wrapper .woocommerce-message li,
.woocommerce-notices-wrapper .woocommerce-error li,
.woocommerce-notices-wrapper .woocommerce-info li {
	display: contents;
}

.woocommerce-notices-wrapper .woocommerce-message::before,
.woocommerce-notices-wrapper .woocommerce-error::before,
.woocommerce-notices-wrapper .woocommerce-info::before,
.woocommerce-notices-wrapper .woocommerce-message li::before,
.woocommerce-notices-wrapper .woocommerce-error li::before,
.woocommerce-notices-wrapper .woocommerce-info li::before {
	display: none !important;
	content: none !important;
}

.woocommerce-notices-wrapper .woocommerce-message a.button,
.woocommerce-notices-wrapper .woocommerce-message .button {
	flex-shrink: 0;
	padding: 5px 14px;
	font-size: 0.75rem;
	font-weight: 600;
	white-space: nowrap;
	border-radius: var(--radius-pill);
	background: var(--color-ink);
	color: #fff !important;
	text-decoration: none;
	border: none;
	transition: background .15s;
}

.woocommerce-notices-wrapper .woocommerce-message a.button:hover {
	background: var(--color-accent);
}

.wc-notice-dismiss {
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	width: 20px;
	height: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: none;
	background: none;
	color: var(--color-muted);
	cursor: pointer;
	padding: 0;
	transition: color .15s;
}

.wc-notice-dismiss:hover {
	color: var(--color-ink);
}

/* ---- PhotoSwipe overrides ---- */
.pswp__top-bar {
	padding-top: env(safe-area-inset-top, 0px);
	height: calc(44px + env(safe-area-inset-top, 0px)) !important;
	padding-right: max(8px, env(safe-area-inset-right, 8px));
	display: flex !important;
	align-items: flex-end;
	justify-content: flex-end;
}

.pswp__counter {
	position: absolute;
	left: max(8px, env(safe-area-inset-left, 8px));
	bottom: 0;
	height: 44px;
	line-height: 44px;
}

.pswp__preloader {
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
}

.star-rating {
	display: inline-flex;
	align-items: center;
	gap: 2px;
	color: var(--color-accent);
	font-size: 0;
}

.star-rating::before {
	content: '\2605\2605\2605\2605\2605';
	font-size: 14px;
	letter-spacing: 2px;
}

@media ( max-width: 1024px ) {
	.products-grid {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media ( max-width: 900px ) {
	.single-product-main {
		grid-template-columns: 1fr;
	}

	.single-product-main {
		padding-inline: 16px;
		gap: 16px;
	}

	.sp-gallery-premium {
		min-height: auto;
		padding: 20px 0 24px;
		padding-left: 16px;
		margin-left: -16px;
	}

	.sp-gallery-premium .woocommerce-product-gallery {
		max-width: 100%;
	}

	.sp-gallery-premium .woocommerce-product-gallery__image img {
		max-height: min(52vh, 420px);
	}

	.sp-gallery-badges {
		top: 14px;
		left: 16px;
	}

	.single-product-info {
		position: static;
		padding: 20px 0 28px;
	}

	.single-product-info .product_title {
		font-size: clamp(1.35rem, 5vw, 1.75rem);
	}

	.sp-breadcrumb {
		margin-bottom: 10px;
	}

	.sp-breadcrumb__list li {
		font-size: 0.6875rem;
	}

	.sp-actions-row {
		gap: 6px 16px;
		margin-bottom: 18px;
	}

	.sp-action-btn {
		font-size: 0.75rem;
		gap: 6px;
	}

	.sp-action-btn svg {
		width: 16px;
		height: 16px;
	}

	.sp-benefits {
		gap: 10px;
		margin-top: 22px;
		margin-bottom: 20px;
	}

	.sp-benefit__text {
		font-size: 0.75rem;
	}

	.single-product-info .price {
		font-size: 1.35rem;
		margin-bottom: 14px;
	}

	.single-product-info .woocommerce-product-details__short-description {
		margin-bottom: 10px;
	}

	.single-product-info .cart {
		flex-direction: row;
		align-items: center;
		gap: 10px;
	}

	.single-product-info .quantity {
		flex-shrink: 0;
	}

	.qty-stepper {
		height: 48px;
	}

	.qty-stepper__btn {
		width: 40px;
		height: 48px;
	}

	.qty-stepper .qty,
	.qty-stepper input.qty,
	.qty-stepper input.input-text.qty {
		width: 48px !important;
		min-width: 48px;
		height: 48px !important;
	}

	.single-product-info .single_add_to_cart_button,
	.single-product-info .button.single_add_to_cart_button {
		flex: 1;
		height: 48px !important;
		min-height: 48px;
		padding: 0 16px !important;
		font-size: 0.8125rem !important;
	}

	.sp-gallery-premium .flex-control-thumbs li,
	.sp-gallery-premium .flex-control-thumbs li img {
		flex-basis: 80px;
		width: 80px;
		height: 80px;
	}

	.sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav .flex-prev {
		left: 6px;
	}

	.sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav .flex-next {
		right: 6px;
	}

	.sp-gallery-premium .woocommerce-product-gallery .flex-direction-nav a {
		width: 48px;
		height: 36px;
		margin-top: -18px;
	}

	.sp-review-form.contact-form {
		grid-template-columns: 1fr;
	}

	.wc-tabs-nav-wrap {
		margin-bottom: 24px;
	}

	.products-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media ( max-width: 420px ) {
	.qty-stepper {
		height: 44px;
	}

	.qty-stepper__btn {
		width: 34px;
		height: 44px;
	}

	.qty-stepper .qty,
	.qty-stepper input.qty,
	.qty-stepper input.input-text.qty {
		width: 40px !important;
		min-width: 40px;
		height: 44px !important;
		font-size: 0.9375rem;
	}

	.single-product-info .single_add_to_cart_button,
	.single-product-info .button.single_add_to_cart_button {
		height: 44px !important;
		min-height: 44px;
		font-size: 0.75rem !important;
		padding: 0 12px !important;
	}
}

.mini-cart-panel {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	width: min(380px, 95vw);
	z-index: 350;
	background: var(--color-bg);
	display: none;
	flex-direction: column;
	clip-path: inset(0 0 0 100%);
	transition: clip-path 0.3s var(--ease);
	box-shadow: var(--shadow-md);
}

.mini-cart-panel.is-animating {
	display: flex;
}

.mini-cart-panel.is-open {
	display: flex;
	clip-path: inset(0 0% 0 0);
}

.mini-cart-panel__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 24px;
	border-bottom: 1px solid var(--color-border);
	flex-shrink: 0;
}

.mini-cart-panel__title {
	font-family: var(--font-heading);
	font-size: 1.2rem;
	color: var(--color-ink);
}

.mini-cart-panel__close {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	color: var(--color-muted);
	border-radius: var(--radius);
	transition: color var(--dur) var(--ease), background var(--dur) var(--ease);
}

.mini-cart-panel__close:hover {
	color: var(--color-ink);
	background: var(--color-bg-soft);
}

.widget_shopping_cart_content {
	flex: 1;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
}

.mini-cart-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	padding: 48px 24px;
	color: var(--color-muted);
	text-align: center;
	flex: 1;
	justify-content: center;
}

.mini-cart-empty p {
	font-size: var(--fs-small);
}

.mini-cart-items {
	flex: 1;
	padding: 16px 24px;
	overflow-y: auto;
}

.mini-cart-item {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 14px 0;
	border-bottom: 1px solid var(--color-border);
}

.mini-cart-item:last-child {
	border-bottom: none;
}

.mini-cart-item__thumb {
	flex-shrink: 0;
	width: 64px;
	height: 64px;
	overflow: hidden;
	background: var(--color-bg-soft);
}

.mini-cart-item__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mini-cart-item__info {
	flex: 1;
	min-width: 0;
}

.mini-cart-item__name {
	display: block;
	font-size: var(--fs-small);
	font-weight: 500;
	color: var(--color-ink);
	line-height: 1.3;
	transition: color var(--dur) var(--ease);
}

.mini-cart-item__name:hover {
	color: var(--color-accent);
}

.mini-cart-item__qty-price {
	display: block;
	font-size: 0.8125rem;
	color: var(--color-muted);
	margin-top: 4px;
}

.mini-cart-item {
	transition: opacity 0.25s ease;
}

.mini-cart-item__remove {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	color: var(--color-muted);
	border-radius: var(--radius);
	transition: color var(--dur) var(--ease), background var(--dur) var(--ease);
}

.mini-cart-item__remove:hover {
	color: #c0392b;
	background: rgba(192, 57, 43, 0.08);
}

.mini-cart-footer {
	padding: 16px 24px 24px;
	border-top: 1px solid var(--color-border);
	flex-shrink: 0;
}

.mini-cart-footer__total {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 0.9375rem;
	margin-bottom: 16px;
}

.mini-cart-footer__total strong {
	font-size: 1.1rem;
	font-weight: 700;
	color: var(--color-ink);
}

.mini-cart-footer__actions {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.mini-cart-footer__btn-cart,
.mini-cart-footer__btn-checkout {
	width: 100%;
	justify-content: center;
	height: 48px;
}

/* ============================================================
   COȘ DE CUMPĂRĂTURI
   ============================================================ */

.cart-page {
	padding-block: clamp(32px, 5vw, 64px);
}

.cart-page-header {
	margin-bottom: 32px;
	padding-bottom: 24px;
	border-bottom: 1px solid var(--color-border);
}

.cart-page-header__title {
	font-family: var(--font-heading);
	font-size: clamp(1.6rem, 3vw, 2.2rem);
	font-weight: 400;
	color: var(--color-ink);
	margin-bottom: 8px;
}

.cart-page-header__breadcrumb ol {
	display: flex;
	gap: 8px;
	list-style: none;
	font-size: 0.8125rem;
	color: var(--color-muted);
}

.cart-page-header__breadcrumb li + li::before {
	content: '/';
	margin-right: 8px;
}

.cart-page-header__breadcrumb a {
	color: var(--color-muted);
	transition: color var(--dur) var(--ease);
}

.cart-page-header__breadcrumb a:hover {
	color: var(--color-accent);
}

.cart-page .woocommerce-breadcrumb {
	font-size: 0.8125rem;
	color: var(--color-muted);
	margin-bottom: 20px;
}

.cart-page .woocommerce-breadcrumb a {
	color: var(--color-muted);
}

.cart-page .woocommerce-breadcrumb a:hover {
	color: var(--color-accent);
}

.cart-page__title {
	font-family: var(--font-heading);
	font-size: clamp(1.6rem, 3vw, 2.2rem);
	font-weight: 400;
	color: var(--color-ink);
	margin-bottom: 32px;
	padding-bottom: 20px;
	border-bottom: 1px solid var(--color-border);
}

/* Coș gol */
.cart-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
	padding: 72px 24px;
	color: var(--color-muted);
	text-align: center;
}

.cart-empty svg {
	color: var(--color-border);
}

.cart-empty p {
	font-size: 1.05rem;
	color: var(--color-muted);
}

/* Layout principal */
.cart-layout {
	display: grid;
	grid-template-columns: 1fr 380px;
	gap: 48px;
	align-items: start;
}

/* Coloana produse */
.cart-items-col {
	min-width: 0;
	overflow-x: auto;
}

/* Lista produse */
.cart-products-wrapper {
	border-top: none;
}

.cart-products {
	display: flex;
	flex-direction: column;
}

.cart-product {
	display: grid;
	grid-template-columns: 100px 1fr auto 120px;
	gap: 24px;
	align-items: center;
	padding: 24px 0;
	border-bottom: 1px solid var(--color-border);
}

.cart-product__thumb {
	display: block;
	width: 100px;
	height: 100px;
	border-radius: 4px;
	overflow: hidden;
	background: none;
	flex-shrink: 0;
}

.cart-product__thumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}

.cart-product__info {
	display: flex;
	flex-direction: column;
	gap: 5px;
	min-width: 0;
}

.cart-product__name {
	font-size: 0.9375rem;
	font-weight: 500;
	color: var(--color-ink);
	line-height: 1.4;
	transition: color var(--dur) var(--ease);
}

.cart-product__name:hover {
	color: var(--color-accent);
}

.cart-product__price {
	font-size: 0.9rem;
	font-weight: 500;
	color: var(--color-muted);
}

.cart-product__price del {
	opacity: 0.6;
}

.cart-product__info .variation {
	margin: 0;
}

.cart-product__info .variation dt,
.cart-product__info .variation dd {
	display: inline;
	font-size: 0.78rem;
	color: var(--color-muted);
	margin: 0;
}

.cart-product__remove {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 0.78rem;
	color: var(--color-muted);
	margin-top: 2px;
	width: fit-content;
	transition: color var(--dur) var(--ease);
}

.cart-product__remove:hover {
	color: #c0392b;
}

.cart-product__qty {
	display: flex;
	justify-content: center;
}

.cart-product__subtotal {
	text-align: right;
}

.cart-product__subtotal-label {
	display: none;
}

.cart-product__subtotal-value {
	font-size: 1rem;
	font-weight: 700;
	color: var(--color-accent);
}

.cart-product__qty-single {
	font-weight: 600;
	color: var(--color-ink);
}

/* Stepper cantitate */
.qty-stepper {
	display: inline-flex;
	align-items: center;
	border: 1.5px solid var(--color-border);
	border-radius: var(--radius-pill);
	overflow: hidden;
	height: 36px;
	background: var(--color-bg);
	transition: border-color var(--dur) var(--ease);
}

.qty-stepper:focus-within {
	border-color: var(--color-accent);
}

.qty-stepper__btn {
	width: 32px;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: none;
	border: none;
	cursor: pointer;
	color: var(--color-muted);
	flex-shrink: 0;
	padding: 0;
	line-height: 1;
	transition: color var(--dur) var(--ease), background var(--dur) var(--ease);
}

.qty-stepper__btn:hover {
	color: var(--color-accent);
	background: var(--color-bg-soft);
}

.qty-stepper__input {
	width: 38px;
	height: 100%;
	text-align: center;
	border: none;
	border-left: 1px solid var(--color-border);
	border-right: 1px solid var(--color-border);
	font-size: 0.875rem;
	font-family: var(--font-body);
	color: var(--color-ink);
	background: var(--color-bg);
	padding: 0 4px;
	-moz-appearance: textfield;
}

.qty-stepper__input::-webkit-inner-spin-button,
.qty-stepper__input::-webkit-outer-spin-button {
	display: none;
}

.qty-stepper__input:focus {
	outline: none;
	background: var(--color-bg-soft);
}

/* Acțiuni coș: cupon + actualizare */
.cart-actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 20px 0 8px;
	flex-wrap: wrap;
	margin-top: 4px;
}

.cart-coupon {
	display: flex;
	gap: 0;
	align-items: stretch;
	height: 48px;
}

.cart-coupon .input-text {
	height: 48px;
	padding: 0 20px;
	border: 1.5px solid var(--color-border);
	border-right: none;
	border-radius: var(--radius-pill) 0 0 var(--radius-pill);
	font-size: 0.875rem;
	font-family: var(--font-body);
	color: var(--color-ink);
	background: var(--color-bg);
	width: 210px;
	transition: border-color var(--dur) var(--ease);
}

.cart-coupon .input-text::placeholder {
	color: var(--color-muted);
}

.cart-coupon .input-text:focus {
	outline: none;
}

.cart-coupon:focus-within .input-text {
	border-color: var(--color-accent);
}

.cart-coupon .btn {
	height: 48px;
	border-radius: 0 var(--radius-pill) var(--radius-pill) 0 !important;
	padding: 0 24px;
	font-size: 0.875rem;
	border: 1.5px solid var(--color-border) !important;
	border-left: none !important;
	transition: border-color var(--dur) var(--ease);
}

.cart-coupon:focus-within .btn {
	border-color: var(--color-accent) !important;
}

/* Coloana totale */
.cart-totals-col {
	position: sticky;
	top: calc(80px + 16px);
	display: flex;
	flex-direction: column;
	gap: 16px;
}

/* Buton checkout – sus, în afara cardului */
.cart-sidebar-cta .wc-proceed-to-checkout {
	margin: 0;
	padding: 0 !important;
}

.cart-sidebar-cta a.checkout-button,
.cart-sidebar-cta a.checkout-button:visited {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 46px;
	background: var(--color-accent) !important;
	color: #fff !important;
	border-radius: var(--radius-pill) !important;
	font-family: var(--font-body);
	font-weight: 600;
	font-size: 0.875rem;
	letter-spacing: 0;
	text-transform: none;
	border: none !important;
	transition: background var(--dur) var(--ease);
	text-decoration: none;
	box-shadow: none !important;
}

.cart-sidebar-cta a.checkout-button:hover {
	background: var(--color-accent-soft) !important;
	color: #fff !important;
}

/* Mesaj trust sub buton */
.cart-trust-note {
	text-align: center;
	font-size: 0.72rem;
	color: var(--color-muted);
	margin-top: 8px;
	letter-spacing: 0.2px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
}

.cart_totals {
	background: #F7F4EF;
	border: none;
	border-radius: 12px;
	padding: 20px 24px;
}

/* Ascunde butonul din interiorul cardului (e redat separat deasupra) */
.cart_totals .wc-proceed-to-checkout {
	display: none;
}

.cart_totals h2,
.cart_totals h3 {
	font-family: var(--font-heading);
	font-size: 1.05rem;
	font-weight: 400;
	color: var(--color-ink);
	margin-bottom: 12px;
}

.cart_totals table {
	width: 100%;
	border-collapse: collapse;
}

.cart_totals table th,
.cart_totals table td {
	padding: 10px 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.04);
	font-size: 0.875rem;
	vertical-align: middle;
}

.cart_totals table th {
	color: var(--color-muted);
	font-weight: 400;
	width: 38%;
	text-align: left;
	white-space: nowrap;
}

.cart_totals table td {
	font-weight: 500;
	color: var(--color-ink);
	text-align: right;
}

/* Rândul Livrare */
.cart_totals .woocommerce-shipping-methods {
	margin: 0;
	padding: 0;
	list-style: none;
}

.cart_totals .woocommerce-shipping-methods li {
	display: block;
}

.cart_totals .woocommerce-shipping-methods label {
	font-size: 0.875rem;
	font-weight: 500;
	color: var(--color-ink);
	text-align: right !important;
	display: block;
}

.cart_totals .woocommerce-shipping-destination {
	font-size: 0.75rem;
	color: var(--color-muted);
	margin: 2px 0 0;
	text-align: right !important;
}

.cart_totals .woocommerce-shipping-destination strong {
	color: var(--color-muted);
	font-weight: 400;
}

/* Ascunde calculatorul de livrare complet */
.cart_totals .woocommerce-shipping-calculator {
	display: none !important;
}

.cart_totals table .order-total th,
.cart_totals table .order-total td {
	font-weight: 700;
	font-size: 0.9375rem;
	color: var(--color-ink);
	border-bottom: none;
	padding-top: 14px;
}

.cart_totals table .order-total td {
	color: var(--color-accent);
}

/* Noticele WooCommerce în coș */
.cart-page .woocommerce-message,
.cart-page .woocommerce-info,
.cart-page .woocommerce-error {
	margin-bottom: 24px;
}

.cart-page .woocommerce-message a.button,
.cart-page .woocommerce-info a.button {
	background: var(--color-accent);
	color: #fff;
	border-radius: var(--radius-pill);
	font-size: 0.8125rem;
	padding: 8px 20px;
}

/* Stare disabled butoane coș (WooCommerce le dezactivează implicit) */
.cart-update-btn {
	height: 48px;
	padding: 0 24px;
	font-size: 0.875rem;
	border-radius: var(--radius-pill) !important;
}

.cart-update-btn:disabled,
.cart-update-btn[disabled] {
	opacity: 0.4;
	cursor: not-allowed;
	pointer-events: none;
}

/* Cupon aplicat — badge discount */
.cart_totals .cart-discount td .woocommerce-remove-coupon {
	display: inline-block;
	margin-left: 8px;
	font-size: 0.72rem;
	color: var(--color-muted);
	text-decoration: underline;
	vertical-align: middle;
}

.cart_totals .cart-discount td .amount {
	color: #2e7d32;
	font-weight: 600;
}

/* Link continuă cumpărăturile */
.cart-continue-link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: 14px;
	font-size: 0.8125rem;
	font-weight: 500;
	color: var(--color-muted);
	text-decoration: none;
	transition: color var(--dur) var(--ease);
	width: 100%;
	justify-content: center;
}

.cart-continue-link:hover {
	color: var(--color-accent);
}

/* Cross-sells (sub formular, full-width) */
.cross-sells {
	margin-top: 56px;
	padding-top: 40px;
	border-top: 1px solid var(--color-border);
}

.cross-sells__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 24px;
}

.cross-sells__head .section-heading {
	font-family: var(--font-heading);
	font-size: clamp(1.3rem, 2.5vw, 1.8rem);
	font-weight: 400;
	margin-bottom: 0;
}

.cross-sells__nav {
	display: flex;
	gap: 8px;
	align-items: center;
	flex-shrink: 0;
}

.cross-sells__swiper-wrap {
	position: relative;
}

.cs-swiper {
	overflow: hidden;
	padding-bottom: 36px;
}

.cs-swiper .swiper-wrapper {
	align-items: stretch;
}

.cs-swiper .swiper-slide {
	height: auto;
	display: flex;
	flex-direction: column;
}

/* ============================================================
   COȘ — Responsive
   ============================================================ */

/* Tabletă mare */
@media (max-width: 1100px) {
	.cart-layout {
		grid-template-columns: 1fr 300px;
		gap: 32px;
	}

	.cart-product {
		grid-template-columns: 84px 1fr auto 96px;
		gap: 16px;
	}

	.cart-product__thumb {
		width: 84px;
		height: 84px;
	}
}

/* Tabletă — layout coloană unică */
@media (max-width: 960px) {
	.cart-layout {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.cart-totals-col {
		position: static;
		gap: 16px;
		max-width: 520px;
	}

	.cart-sidebar-cta a.checkout-button {
		height: 50px;
	}
}

/* Mobil */
@media (max-width: 767px) {
	.cart-page {
		padding-block: clamp(24px, 4vw, 40px);
	}

	.cart-page-header {
		margin-bottom: 20px;
		padding-bottom: 16px;
	}

	.cart-layout {
		gap: 20px;
	}

	/* Produs: imagine stânga, info dreapta pe 3 rânduri */
	.cart-product {
		grid-template-columns: 72px 1fr;
		grid-template-rows: auto auto auto;
		gap: 6px 14px;
		padding: 16px 0;
	}

	.cart-product__thumb {
		grid-column: 1;
		grid-row: 1 / 4;
		width: 72px;
		height: 72px;
		align-self: start;
	}

	.cart-product__info {
		grid-column: 2;
		grid-row: 1;
	}

	.cart-product__name {
		font-size: 0.875rem;
	}

	.cart-product__qty {
		grid-column: 2;
		grid-row: 2;
		justify-content: flex-start;
	}

	.cart-product__subtotal {
		grid-column: 2;
		grid-row: 3;
		text-align: left;
		display: flex;
		align-items: center;
		gap: 6px;
	}

	.cart-product__subtotal-label {
		display: inline;
		font-size: 0.78rem;
		color: var(--color-muted);
		font-weight: 400;
	}

	.cart-product__subtotal-value {
		font-size: 0.9375rem;
	}

	/* Acțiuni coș */
	.cart-actions {
		flex-direction: column;
		align-items: stretch;
		gap: 10px;
		padding: 16px 0 4px;
	}

	/* Cupon: rând complet, input se extinde */
	.cart-coupon {
		width: 100%;
		height: 46px;
	}

	.cart-coupon .input-text {
		flex: 1;
		width: auto;
		height: 46px;
	}

	.cart-coupon .btn {
		height: 46px;
		flex-shrink: 0;
	}

	.cart-update-btn {
		width: 100%;
		height: 46px;
		justify-content: center;
		text-align: center;
	}

	/* Sidebar totale */
	.cart-totals-col {
		max-width: 100%;
	}

	.cart-sidebar-cta a.checkout-button {
		height: 50px;
		font-size: 0.875rem;
	}

	.cart_totals {
		padding: 16px 18px;
	}

	.cart_totals h2,
	.cart_totals h3 {
		font-size: 0.9375rem;
		margin-bottom: 10px;
	}

	.cart-continue-link {
		margin-top: 10px;
		font-size: 0.8125rem;
	}

	.cross-sells {
		margin-top: 32px;
		padding-top: 24px;
	}

	.cross-sells__head .section-heading {
		font-size: 1.1rem;
	}
}

/* Mobil mic */
@media (max-width: 480px) {
	.cart-product {
		grid-template-columns: 64px 1fr;
		gap: 4px 12px;
	}

	.cart-product__thumb {
		width: 64px;
		height: 64px;
	}

	.cart-product__name {
		font-size: 0.8125rem;
	}

	.cart-product__price {
		font-size: 0.8125rem;
	}

	.qty-stepper {
		height: 34px;
	}

	.qty-stepper__btn {
		width: 28px;
	}

	.qty-stepper__input {
		width: 34px;
		font-size: 0.8125rem;
	}

	.cart-coupon,
	.cart-coupon .input-text,
	.cart-coupon .btn,
	.cart-update-btn {
		height: 44px;
	}

	.cart_totals {
		padding: 14px 16px;
	}
}

/* ============================================================
   CHECKOUT
   ============================================================ */

/* Wrapper (injectat de form-checkout.php override) */
.checkout-wrapper {
	padding-block: clamp(24px, 4vw, 48px);
}

/* Header */
.checkout-page-header {
	margin-bottom: 32px;
}

.checkout-page__title {
	font-family: var(--font-heading);
	font-size: var(--fs-h2);
	font-weight: 400;
	color: var(--color-ink);
	margin-bottom: 8px;
}

/* Breadcrumb */
.checkout-breadcrumb ol {
	display: flex;
	list-style: none;
	font-size: 0.8125rem;
	color: var(--color-muted);
}

.checkout-breadcrumb li:not(:last-child)::after {
	content: '/';
	margin: 0 8px;
	opacity: 0.4;
}

.checkout-breadcrumb a {
	color: var(--color-muted);
	transition: color var(--dur) var(--ease);
}

.checkout-breadcrumb a:hover {
	color: var(--color-accent);
}

.checkout-breadcrumb li[aria-current="page"] {
	color: var(--color-ink);
	font-weight: 500;
}

/* Layout 2 coloane */
.checkout-layout {
	display: grid;
	grid-template-columns: 1fr 380px;
	gap: 48px;
	align-items: start;
}

/* ---- Secțiuni numerotate ---- */
.checkout-section {
	margin-bottom: 32px;
}

.checkout-section:last-child {
	margin-bottom: 0;
}

.checkout-section__head {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 24px;
	padding-bottom: 14px;
	border-bottom: 1px solid var(--color-border);
}

.checkout-section__num {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	background: var(--color-accent);
	color: #fff;
	border-radius: 50%;
	font-size: 0.875rem;
	font-weight: 700;
	flex-shrink: 0;
	line-height: 1;
}

.checkout-section__title {
	font-family: var(--font-heading);
	font-size: 1.15rem;
	font-weight: 400;
	color: var(--color-ink);
	margin: 0;
}

/* ---- Grid câmpuri facturare/livrare ---- */
.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper,
.woocommerce-additional-fields__field-wrapper,
.woocommerce-address-fields__field-wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.woocommerce-billing-fields__field-wrapper .form-row.form-row-wide,
.woocommerce-shipping-fields__field-wrapper .form-row.form-row-wide,
.woocommerce-additional-fields__field-wrapper .form-row.form-row-wide,
.woocommerce-additional-fields__field-wrapper .form-row.notes,
.woocommerce-address-fields__field-wrapper .form-row.form-row-wide {
	grid-column: 1 / -1;
}

/* ---- Labels ---- */
.form-row {
	display: flex;
	flex-direction: column;
	gap: 7px;
}

.form-row label {
	display: block;
	font-size: var(--fs-small);
	font-weight: 600;
	color: var(--color-ink);
	margin-bottom: 6px;
}

/* Checkout: label aproape de inputul său, cu spațiu față de câmpul anterior */
.woocommerce-billing-fields__field-wrapper .form-row label,
.woocommerce-shipping-fields__field-wrapper .form-row label,
.woocommerce-additional-fields__field-wrapper .form-row label,
.woocommerce-address-fields__field-wrapper .form-row label {
	padding-top: 8px;
	margin-bottom: 4px;
}

.form-row label .required {
	color: var(--color-accent);
	margin-left: 2px;
}

.form-row label:empty {
	display: none;
}

/* ---- Inputuri — identice cu .form-field input ---- */
/* !important necesar — woocommerce.css are selectori cu specificitate înaltă */
/* textarea.input-text excluded — are propriul bloc de mai jos cu border-radius: 4px */
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row .input-text:not(textarea),
.woocommerce-page .form-row input.input-text,
.woocommerce-page .form-row .input-text:not(textarea) {
	width: 100% !important;
	padding: 12px 20px !important;
	border: 1.5px solid var(--color-border) !important;
	border-radius: var(--radius-pill) !important;
	font-size: 0.9375rem !important;
	font-family: var(--font-body) !important;
	color: var(--color-ink) !important;
	background: var(--color-bg) !important;
	transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease) !important;
	height: auto !important;
	box-shadow: none !important;
	outline: none !important;
}

/* Select nativ — stilizat identic cu inputurile pill (și ca fallback când Select2 nu inițializează) */
.woocommerce-checkout .form-row select,
.woocommerce-page .form-row select {
	width: 100% !important;
	padding: 12px 44px 12px 20px !important;
	border: 1.5px solid var(--color-border) !important;
	border-radius: var(--radius-pill) !important;
	font-size: 0.9375rem !important;
	font-family: var(--font-body) !important;
	color: var(--color-ink) !important;
	background-color: var(--color-bg) !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%237A726B' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 18px center !important;
	appearance: none !important;
	-webkit-appearance: none !important;
	cursor: pointer !important;
	transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease) !important;
	height: auto !important;
	box-shadow: none !important;
	outline: none !important;
	display: block !important;
}
.woocommerce-checkout .form-row select:focus,
.woocommerce-page .form-row select:focus {
	border-color: var(--color-accent) !important;
	box-shadow: 0 0 0 3px rgba(149, 120, 82, 0.08) !important;
	outline: none !important;
}

.woocommerce-checkout .form-row textarea,
.woocommerce-page .form-row textarea {
	width: 100% !important;
	padding: 12px 16px !important;
	border: 1.5px solid var(--color-border) !important;
	border-radius: 15px !important;
	font-size: 0.9375rem !important;
	font-family: var(--font-body) !important;
	color: var(--color-ink) !important;
	background: var(--color-bg) !important;
	transition: border-color var(--dur) var(--ease) !important;
	resize: vertical !important;
	min-height: 100px !important;
	height: auto !important;
	box-shadow: none !important;
}

.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row .input-text:focus,
.woocommerce-checkout .form-row textarea:focus,
.woocommerce-page .form-row input.input-text:focus,
.woocommerce-page .form-row .input-text:focus,
.woocommerce-page .form-row textarea:focus {
	outline: none !important;
	border-color: var(--color-accent) !important;
	box-shadow: 0 0 0 3px rgba(149, 120, 82, 0.08) !important;
}

/* Resetează float-urile WooCommerce pe form-row-first/last — grid-ul nostru le gestionează */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row,
.woocommerce-address-fields__field-wrapper .form-row {
	float: none !important;
	width: auto !important;
	clear: none !important;
}

/* Input wrapper — WooCommerce înfășoară inputurile într-un span */
.woocommerce-input-wrapper {
	display: block;
	width: 100%;
}

/* Validare WooCommerce */
.form-row.woocommerce-invalid input.input-text,
.form-row.woocommerce-invalid select {
	border-color: #c0392b !important;
	box-shadow: none !important;
}

.woocommerce-error,
.woocommerce-invalid-required-field abbr {
	color: #c0392b;
}

/* ---- Select2 base (woocommerce.css dezactivat — redefinim baza necesară) ---- */
.select2-container {
	box-sizing: border-box;
	display: inline-block;
	margin: 0;
	position: relative;
	vertical-align: middle;
	max-width: 100%;
	overflow-x: clip;
}
.select2-container .select2-selection--single {
	box-sizing: border-box;
	cursor: pointer;
	display: block;
	user-select: none;
}
.select2-container .select2-selection--single .select2-selection__rendered {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.select2-container .select2-selection--multiple {
	box-sizing: border-box;
	cursor: pointer;
	display: block;
	min-height: 32px;
	user-select: none;
}
.select2-dropdown {
	background: var(--color-bg);
	box-sizing: border-box;
	display: block;
	position: absolute;
	left: -100000px;
	width: 100%;
	z-index: 10500;
}
.select2-container--open .select2-dropdown {
	left: 0;
}
.select2-results {
	display: block;
}
.select2-results__options {
	list-style: none;
	margin: 0;
	padding: 0;
	max-height: 240px;
	overflow-y: auto;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 100%;
	position: absolute;
	top: 0;
	right: 1px;
	width: 20px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
	border-color: #888 transparent transparent;
	border-style: solid;
	border-width: 5px 4px 0;
	height: 0;
	left: 50%;
	margin-left: -4px;
	margin-top: -2px;
	position: absolute;
	top: 50%;
	width: 0;
}
.select2-hidden-accessible {
	border: 0 !important;
	clip: rect(0 0 0 0) !important;
	clip-path: inset(50%) !important;
	height: 1px !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: absolute !important;
	width: 1px !important;
	white-space: nowrap !important;
}

/* ---- Select2 — stilizare temă doarbai ---- */
.checkout-wrapper .select2-container,
.woocommerce-page .select2-container {
	width: 100% !important;
	display: block;
}

.checkout-wrapper .select2-container--default .select2-selection--single,
.woocommerce-page .select2-container--default .select2-selection--single {
	border: 1.5px solid var(--color-border) !important;
	border-radius: var(--radius-pill) !important;
	height: auto !important;
	padding: 12px 44px 12px 20px !important;
	background: var(--color-bg) !important;
	transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease) !important;
}

.checkout-wrapper .select2-container--default .select2-selection--single .select2-selection__rendered,
.woocommerce-page .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: normal;
	padding: 0;
	font-size: 0.9375rem;
	font-family: var(--font-body);
	color: var(--color-ink);
}

.checkout-wrapper .select2-container--default .select2-selection--single .select2-selection__arrow,
.woocommerce-page .select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 100%;
	top: 0;
	right: 16px;
	width: 20px;
}

.checkout-wrapper .select2-container--default .select2-selection--single .select2-selection__arrow b,
.woocommerce-page .select2-container--default .select2-selection--single .select2-selection__arrow b {
	border-color: #7A726B transparent transparent;
	border-width: 5px 4px 0;
	margin-top: -2px;
}

.checkout-wrapper .select2-container--default.select2-container--open .select2-selection--single,
.woocommerce-page .select2-container--default.select2-container--open .select2-selection--single {
	border-color: var(--color-accent);
	box-shadow: none;
}

.checkout-wrapper .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b,
.woocommerce-page .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
	border-color: transparent transparent var(--color-accent);
	border-width: 0 4px 5px;
}

/* Dropdown list */
.select2-dropdown {
	border: none;
	border-radius: 16px;
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
	font-family: var(--font-body);
	overflow: hidden;
	margin-top: 4px;
}

.select2-results__options {
	padding: 6px;
}

.select2-search--dropdown {
	padding: 10px 10px 4px;
}

.select2-search--dropdown .select2-search__field {
	border: 1.5px solid var(--color-border);
	border-radius: var(--radius-pill);
	padding: 8px 14px;
	font-size: 0.875rem;
	font-family: var(--font-body);
	color: var(--color-ink);
	outline: none;
	width: 100%;
	transition: border-color var(--dur) var(--ease);
}

.select2-search--dropdown .select2-search__field:focus {
	border-color: var(--color-accent);
	box-shadow: 0 0 0 3px rgba(230, 175, 93, 0.12);
}

.select2-results__option {
	font-size: 0.875rem;
	padding: 8px 12px;
	border-radius: 8px;
	border: none !important;
	outline: none !important;
	color: var(--color-ink);
	transition: background var(--dur) var(--ease);
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted {
	background: #F7F4EF !important;
	color: var(--color-ink) !important;
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
}

.select2-container--default .select2-results__option[aria-selected="true"] {
	background: rgba(230, 175, 93, 0.12);
	color: var(--color-accent);
	font-weight: 500;
}

/* Selector fallback agresiv — acoperă situațiile când .checkout-wrapper nu e prezent */
.woocommerce-checkout .select2-selection--single,
.woocommerce-page .select2-selection--single {
	border-radius: var(--radius-pill) !important;
	height: auto !important;
	min-height: 46px !important;
	display: flex !important;
	align-items: center !important;
}

/* Ascunde select-ul nativ (Select2 îl ascunde via tabindex=-1, dar facem explicit) */
.select2-hidden-accessible {
	border: 0 !important;
	clip: rect(0 0 0 0) !important;
	height: 1px !important;
	margin: -1px !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: absolute !important;
	width: 1px !important;
}

/* Notița de cupon de deasupra formularului */
.woocommerce-info {
	background: var(--color-bg-soft);
	border-radius: 15px;
	padding: 12px 20px;
	font-size: 0.875rem;
	color: var(--color-muted);
	margin-bottom: 24px;
	border-left: none;
	box-shadow: none;
}

.woocommerce-info::before {
	display: none;
}

.woocommerce-info a {
	color: var(--color-accent);
	font-weight: 500;
	text-decoration: none;
}

.woocommerce-info a:hover {
	text-decoration: underline;
}

/* Card cupon */
.checkout-coupon-card {
	background: var(--color-bg-soft);
	border-radius: 12px;
	padding: 24px;
}

.checkout-coupon-card__title {
	font-family: var(--font-heading);
	font-size: 1.05rem;
	font-weight: 400;
	color: var(--color-ink);
	margin: 0 0 16px;
}

/* Ascunde notița toggle — formularul e afișat direct */
.checkout-coupon-card .woocommerce-info {
	display: none !important;
}

/* Formular cupon checkout */
.checkout_coupon.woocommerce-form-coupon {
	margin: 0;
}

.coupon-row {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.coupon-row__input {
	flex: 1;
	min-width: 0;
	padding: 11px 20px;
	border: 1.5px solid var(--color-border);
	border-radius: var(--radius-pill);
	font-size: 0.9375rem;
	font-family: var(--font-body);
	color: var(--color-ink);
	background: var(--color-bg);
	outline: none;
	transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
}

.coupon-row__input:focus {
	border-color: var(--color-accent);
	box-shadow: 0 0 0 3px rgba(149, 120, 82, 0.08);
}

.coupon-row__btn {
	flex-shrink: 0;
	white-space: nowrap;
	padding: 11px 24px;
	background: var(--color-accent);
	color: #fff;
	border: none;
	border-radius: var(--radius-pill);
	font-size: 0.9375rem;
	font-family: var(--font-body);
	font-weight: 600;
	cursor: pointer;
	transition: background var(--dur) var(--ease);
}

.coupon-row__btn:hover {
	background: var(--color-accent);
}

/* Stare inițială — ascuns; JS WooCommerce îl afișează când checkbox-ul e bifat */
.woocommerce-checkout .shipping_address {
	display: none;
}

/* ---- Toggle "Livrez la altă adresă" ---- */
.checkout-ship-toggle {
	display: flex;
	align-items: center;
	gap: 10px;
	cursor: pointer;
	margin-bottom: 20px;
	padding: 14px 18px;
	border: 1.5px solid var(--color-border);
	border-radius: 15px;
	background: var(--color-bg-soft);
	font-size: 0.9375rem;
	font-weight: 500;
	color: var(--color-ink);
	transition: border-color var(--dur) var(--ease);
	user-select: none;
}

.checkout-ship-toggle:hover {
	border-color: var(--color-accent);
}

.checkout-ship-toggle input[type="checkbox"] {
	position: absolute;
	opacity: 0;
	width: 1px;
	height: 1px;
}

.checkout-ship-toggle__checkmark {
	width: 20px;
	height: 20px;
	border: 2px solid var(--color-border);
	border-radius: 6px;
	background: #fff;
	flex-shrink: 0;
	transition: border-color var(--dur) var(--ease), background var(--dur) var(--ease);
	background-repeat: no-repeat;
	background-position: center;
}

.checkout-ship-toggle input:checked ~ .checkout-ship-toggle__checkmark {
	background-color: var(--color-accent);
	border-color: var(--color-accent);
	background-image: 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='white' stroke-width='3'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
}

/* ---- Note comandă ---- */
.checkout-notes-section {
	margin-top: 24px;
	padding-top: 20px;
	border-top: 1px solid var(--color-border);
}

.checkout-notes-label {
	font-size: 0.9375rem;
	font-weight: 500;
	color: var(--color-ink);
	margin-bottom: 10px;
}

/* ---- Coloana dreapta: sumar + plată stacked ---- */
.checkout-review-col {
	position: sticky;
	top: calc(80px + 16px);
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.checkout-review-card,
.checkout-payment-card {
	background: var(--color-bg-soft);
	border-radius: 12px;
	padding: 24px;
}

.checkout-review-card__title,
.checkout-payment-card__title {
	font-family: var(--font-heading);
	font-size: 1.05rem;
	font-weight: 400;
	color: var(--color-ink);
	margin-bottom: 16px;
	padding-bottom: 14px;
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

/* ---- Tabelul sumar produse ---- */
.checkout-wrapper .woocommerce-checkout-review-order-table,
.woocommerce .woocommerce-checkout-review-order-table {
	width: 100% !important;
	border-collapse: collapse !important;
	margin-bottom: 0 !important;
	background: transparent !important;
}

.checkout-wrapper .woocommerce-checkout-review-order-table thead {
	display: none;
}

.checkout-wrapper .woocommerce-checkout-review-order-table tbody td,
.woocommerce .woocommerce-checkout-review-order-table tbody td {
	padding: 9px 0 !important;
	font-size: 0.875rem !important;
	border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important;
	border-top: none !important;
	vertical-align: middle !important;
	color: var(--color-ink) !important;
	background: transparent !important;
}

.checkout-wrapper .woocommerce-checkout-review-order-table .product-name {
	padding-right: 12px !important;
}

.checkout-wrapper .woocommerce-checkout-review-order-table .product-quantity {
	color: var(--color-muted);
	font-weight: 400;
}

.checkout-wrapper .woocommerce-checkout-review-order-table .product-total {
	text-align: right !important;
	font-weight: 500;
	white-space: nowrap;
}

/* Footer tabel (subtotal, livrare, total) */
.checkout-wrapper .woocommerce-checkout-review-order-table tfoot th,
.checkout-wrapper .woocommerce-checkout-review-order-table tfoot td,
.woocommerce .woocommerce-checkout-review-order-table tfoot th,
.woocommerce .woocommerce-checkout-review-order-table tfoot td {
	padding: 8px 0 !important;
	font-size: 0.875rem !important;
	border-bottom: 1px solid rgba(0, 0, 0, 0.04) !important;
	border-top: none !important;
	vertical-align: middle !important;
	background: transparent !important;
}

.checkout-wrapper .woocommerce-checkout-review-order-table tfoot th {
	color: var(--color-muted) !important;
	font-weight: 400 !important;
	text-align: left !important;
}

.checkout-wrapper .woocommerce-checkout-review-order-table tfoot td {
	text-align: right !important;
	font-weight: 500 !important;
	color: var(--color-ink) !important;
}

.checkout-wrapper .woocommerce-checkout-review-order-table tfoot .order-total th,
.checkout-wrapper .woocommerce-checkout-review-order-table tfoot .order-total td {
	font-weight: 700 !important;
	font-size: 0.9375rem !important;
	border-bottom: none !important;
	padding-top: 12px !important;
}

.checkout-wrapper .woocommerce-checkout-review-order-table tfoot .order-total td {
	color: var(--color-accent) !important;
}

/* Ascunde calculatorul de livrare din sumar */
.woocommerce-checkout-review-order-table .woocommerce-shipping-calculator {
	display: none !important;
}

/* Link-uri din review card — anulăm albastrul implicit al browser-ului */
.checkout-review-card a,
.checkout-review-card .woocommerce-checkout-review-order-table a {
	color: var(--color-ink) !important;
	text-decoration: none !important;
}

.checkout-review-card .woocommerce-checkout-review-order-table .product-name a {
	color: var(--color-ink) !important;
	font-weight: 400 !important;
}

.checkout-review-card .woocommerce-checkout-review-order-table tfoot a {
	color: var(--color-muted) !important;
	font-size: 0.75rem !important;
}

/* ---- Metode de plată (template payment.php — clase custom .checkout-payment*) ---- */
.checkout-payment {
	margin-top: 4px;
}

.checkout-payment__methods {
	list-style: none;
	margin: 0 0 16px;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.checkout-payment__method {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	border: 1.5px solid var(--color-border);
	border-radius: 12px;
	background: var(--color-bg);
	overflow: hidden;
	transition: border-color var(--dur) var(--ease);
}

.checkout-payment__method:has(.checkout-payment__radio:checked) {
	border-color: var(--color-accent);
	background: #fffdf9;
}

/* Radio — sibling direct înainte de label */
.checkout-payment__radio {
	flex-shrink: 0;
	accent-color: var(--color-accent);
	width: 17px;
	height: 17px;
	margin: 0 0 0 16px;
	cursor: pointer;
}

.checkout-payment__label {
	flex: 1;
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 14px 16px;
	cursor: pointer;
	font-size: 0.875rem;
	font-weight: 500;
	color: var(--color-ink);
}

.checkout-payment__label img { height: 22px; width: auto; }

.checkout-payment__box {
	flex-basis: 100%;
	padding: 12px 16px 14px;
	border-top: 1px solid var(--color-border);
	background: var(--color-bg-soft);
	font-size: 0.8125rem;
	color: var(--color-muted);
	line-height: 1.6;
}

.checkout-payment__box::before { display: none; }
.checkout-payment__box p { margin: 0; color: var(--color-muted); font-size: 0.8125rem; }
.checkout-payment__box a { color: var(--color-accent); }

.checkout-payment__no-methods {
	padding: 14px 0;
	color: var(--color-muted);
	font-size: var(--fs-small);
}

/* Footer plată — terms + buton */
.checkout-payment__footer {
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
}

.checkout-payment__footer noscript { display: none; }

/* Terms & conditions */
.checkout-payment__footer .woocommerce-terms-and-conditions-wrapper { margin-bottom: 12px; }

.checkout-payment__footer .woocommerce-privacy-policy-text p {
	font-size: 0.8125rem;
	color: var(--color-muted);
	margin-bottom: 12px;
	line-height: 1.55;
}

.checkout-payment__footer .woocommerce-privacy-policy-text a { color: var(--color-accent); }

.checkout-payment__footer .form-row.validate-required label {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	font-size: 0.8125rem;
	font-weight: 400;
	color: var(--color-muted);
	cursor: pointer;
}

.checkout-payment__footer .form-row.validate-required label input[type="checkbox"] {
	accent-color: var(--color-accent);
	flex-shrink: 0;
	margin-top: 2px;
	width: 15px;
	height: 15px;
}

/* Buton Plasează comanda */
.checkout-payment__submit {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 52px;
	background: var(--color-accent);
	color: #fff;
	border: none;
	border-radius: var(--radius-pill);
	font-family: var(--font-body);
	font-weight: 700;
	font-size: 0.9375rem;
	letter-spacing: 0.3px;
	cursor: pointer;
	transition: background var(--dur) var(--ease);
	margin-top: 16px;
}

.checkout-payment__submit:hover { background: var(--color-accent-soft); }
.checkout-payment__submit:disabled { opacity: 0.6; cursor: not-allowed; }

/* Date contact sub buton */
.checkout-contact {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid rgba(0, 0, 0, 0.06);
	flex-wrap: wrap;
}

.checkout-contact__item {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 0.8125rem;
	color: var(--color-muted);
	text-decoration: none;
	transition: color var(--dur) var(--ease);
}

.checkout-contact__item:hover { color: var(--color-accent); }

.checkout-contact__item svg {
	flex-shrink: 0;
	opacity: 0.7;
}

/* ---- Checkout responsive ---- */

/* Tabletă landscape */
@media (max-width: 1100px) {
	.checkout-layout {
		grid-template-columns: 1fr 320px;
		gap: 32px;
	}
}

/* Tabletă portrait — stivuire, formulare primul */
@media (max-width: 860px) {
	.checkout-wrapper {
		padding-block: 24px 40px;
	}

	.checkout-layout {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	/* Formulare (.checkout-details) rămân primele (order natural HTML) */
	.checkout-details {
		order: 1;
	}

	/* Sumar + plată după formulare */
	.checkout-review-col {
		order: 2;
		position: static;
	}

	/* Cardul de sumar mai compact */
	.checkout-review-card,
	.checkout-coupon-card,
	.checkout-payment-card {
		padding: 20px;
	}

	/* Sumar comandă pe toată lățimea */
	.checkout-review-col {
		display: flex;
		flex-direction: column;
		gap: 16px;
	}
}

/* Tabletă mică / mobil mare */
@media (max-width: 640px) {
	.woocommerce-billing-fields__field-wrapper,
	.woocommerce-shipping-fields__field-wrapper,
	.woocommerce-address-fields__field-wrapper {
		grid-template-columns: 1fr;
	}

	.checkout-section__head {
		margin-bottom: 16px;
	}

	.checkout-section {
		margin-bottom: 24px;
	}

	.checkout-page-header {
		margin-bottom: 20px;
	}

	.checkout-review-card,
	.checkout-coupon-card,
	.checkout-payment-card {
		padding: 16px;
		border-radius: 14px;
	}

	/* Toggle livrare altă adresă */
	.checkout-ship-toggle {
		padding: 12px 16px;
		font-size: 0.875rem;
	}
}

/* Mobil */
@media (max-width: 480px) {
	.checkout-section__num {
		width: 26px;
		height: 26px;
		font-size: 0.8125rem;
	}

	.checkout-section__title {
		font-size: 1rem;
	}

	/* Grid câmpuri compact — gap mic, spațiul vine din padding-top pe label */
	.woocommerce-billing-fields__field-wrapper,
	.woocommerce-shipping-fields__field-wrapper,
	.woocommerce-additional-fields__field-wrapper,
	.woocommerce-address-fields__field-wrapper {
		gap: 4px;
	}

	/* Inputuri mai mici */
	.woocommerce-checkout .form-row input.input-text,
	.woocommerce-checkout .form-row .input-text:not(textarea),
	.woocommerce-checkout .form-row select {
		padding-top: 9px !important;
		padding-bottom: 9px !important;
		font-size: 0.9375rem;
	}

	/* Gap intern label→input redus (controlat de gap, nu de margin) */
	.woocommerce-billing-fields__field-wrapper .form-row,
	.woocommerce-shipping-fields__field-wrapper .form-row,
	.woocommerce-additional-fields__field-wrapper .form-row,
	.woocommerce-address-fields__field-wrapper .form-row {
		gap: 4px;
	}

	/* Label mai compact, cu padding-top pentru separare față de inputul anterior */
	.woocommerce-billing-fields__field-wrapper .form-row label,
	.woocommerce-shipping-fields__field-wrapper .form-row label,
	.woocommerce-additional-fields__field-wrapper .form-row label,
	.woocommerce-address-fields__field-wrapper .form-row label {
		font-size: 0.8125rem;
		padding-top: 10px;
		line-height: 1.2;
	}

	.checkout-payment__submit {
		height: 52px;
		font-size: 0.9375rem;
		width: 100%;
	}
}


@media ( max-width: 480px ) {
	.products-grid {
		grid-template-columns: 1fr;
	}

	.sp-tab-prose {
		font-size: 1rem;
		line-height: 1.75;
	}
}

@media ( max-width: 640px ) {
	.usp-band__grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.home-products__head {
		flex-direction: column;
		align-items: flex-start;
	}

	.blog-preview__header {
		flex-direction: column;
		align-items: flex-start;
		gap: 16px;
	}

	.home-newsletter__row {
		flex-direction: column;
		gap: 10px;
	}

	.home-newsletter__input {
		flex: none;
		width: 100%;
		height: 46px;
		border: 1.5px solid rgba(255, 255, 255, 0.25);
		border-radius: var(--radius-pill);
	}

	.home-newsletter__btn {
		flex: none;
		width: 100%;
		height: 46px;
		border-radius: var(--radius-pill);
		justify-content: center;
	}

	.cta-band__actions {
		flex-direction: column;
		width: 100%;
	}

	.cta-band__btn {
		text-align: center;
		justify-content: center;
	}

	.blog-preview__grid {
		grid-template-columns: 1fr;
	}

	.posts-grid {
		grid-template-columns: 1fr;
	}
}

/* ---- Homepage responsive suplimentar ---- */
@media (max-width: 480px) {
	/* Hero: padding bottom mai mic pe telefon mic */
	.hero-slide {
		padding-bottom: 48px;
	}

	/* USP compact: 2 coloane, fără descriere, doar icon + titlu */
	.usp-band {
		padding-block: 20px;
	}

	.usp-band__grid {
		gap: 8px;
	}

	.usp-item {
		padding: 14px 10px;
		gap: 8px;
	}

	.usp-item__icon {
		width: 24px;
		height: 24px;
	}

	.usp-item__title {
		font-size: 0.825rem;
	}

	.usp-item__text {
		display: none;
	}

	/* CTA band: padding mai mic */
	.cta-band__inner {
		gap: 20px;
	}

	.cta-band__actions {
		width: 100%;
	}

	/* Categories featured: min-height mai mica */
	.cats-featured__layout {
		min-height: 0;
	}

	.cats-featured__left {
		padding: 24px 20px;
		gap: 16px;
	}

	.cats-featured__right {
		padding: 16px;
	}

	/* Testimonials: icon citat mai mic, card padding redus */
	.testimonial-card {
		padding: 20px;
	}

	.testimonial-card__quote {
		font-size: 2.5rem;
	}

	/* Blog: card body padding */
	.blog-card__body {
		padding: 16px;
	}

	.blog-card__title {
		font-size: 1.0625rem;
	}

	/* Inspiration: frame mai inalt pe telefon portrait */
	.inspiration__frame {
		aspect-ratio: 3 / 4;
		min-height: 280px;
	}

	.inspiration__intro {
		max-width: 100%;
	}
}

/* ---- Homepage 768px (tablete) ---- */
@media (max-width: 768px) {
	/* Testimonials: nav butoane mai mici */
	.testimonials__nav .swiper-nav-btn {
		width: 40px;
		height: 34px;
	}

	/* Products carousel: head gap */
	.home-products__head {
		gap: 12px;
	}

	/* Brands: spatiu mai mic */
	.brands__grid-item {
		padding: 6px 12px;
	}

	.brands__logo {
		max-height: 52px;
	}
}

/* ============================================================
   BREADCRUMB
   ============================================================ */

.breadcrumb {
	padding: 14px 0;
	border-bottom: 1px solid var(--color-border);
	background: var(--color-bg);
}

.breadcrumb__list {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px 8px;
	font-size: var(--fs-small);
	color: var(--color-muted);
}

.breadcrumb__item + .breadcrumb__item::before {
	content: '/';
	color: var(--color-muted);
	margin: 0 6px;
	opacity: .5;
}

.breadcrumb__link {
	color: var(--color-muted);
	transition: color var(--dur) var(--ease);
}

.breadcrumb__link:hover {
	color: var(--color-accent);
}

.breadcrumb__item--current {
	color: var(--color-ink);
	font-weight: 500;
}

/* ============================================================
   PAGE / PROSE – Pagini de conținut standard
   ============================================================ */

.page-content,
.tmpl-default {
	max-width: 860px;
	margin-inline: auto;
	padding-block: clamp(48px, 6vw, 80px);
}

.prose-article,
.page-article {
	max-width: 760px;
	margin-inline: auto;
	padding-block: clamp(48px, 6vw, 80px);
}

.prose-article__header,
.page-article__header {
	margin-bottom: 36px;
	padding-bottom: 24px;
	border-bottom: 1px solid var(--color-border);
}

.prose-article__title,
.page-article__title {
	font-size: var(--fs-h1);
	color: var(--color-ink);
}

.entry-content {
	font-size: 1rem;
	line-height: var(--lh-body);
	color: var(--color-ink);
}

.entry-content > * + * {
	margin-top: 1.25em;
}

.entry-content h2 { font-size: var(--fs-h2); color: var(--color-ink); margin-top: 2em; }
.entry-content h3 { font-size: var(--fs-h3); color: var(--color-ink); margin-top: 1.75em; }
.entry-content h4 { font-size: 1.125rem; font-weight: 700; margin-top: 1.5em; }

.entry-content ul,
.entry-content ol {
	padding-left: 1.5em;
}

.entry-content ul { list-style: disc; }
.entry-content ol { list-style: decimal; }

.entry-content a {
	color: var(--color-accent);
	text-decoration: underline;
}

.entry-content a:hover {
	text-decoration: none;
}

/* Excepții: link-uri din carduri de produs în interiorul entry-content */
.entry-content .product-card__title a { color: var(--color-ink); text-decoration: none; }
.entry-content .product-card__title a:hover { color: var(--color-accent); text-decoration: none; }
.entry-content a.product-card__cat { color: var(--color-muted); text-decoration: none; }
.entry-content a.product-card__cat:hover { color: var(--color-accent); text-decoration: none; }
.entry-content a.pc-cart-btn { color: #fff; text-decoration: none; }

/* Excepții: popup hotspot — resetează orice stil moștenit din entry-content */
.hotspot__popup a { color: var(--color-ink); text-decoration: none; }
.hotspot__popup a:hover { color: var(--color-accent); text-decoration: none; }
.hotspot__popup a.hotspot__popup-link { color: var(--color-accent); text-decoration: none; }
.hotspot__popup a.hotspot__popup-link:hover { color: var(--color-accent); text-decoration: none; }
.hotspot__popup .hotspot__popup-title { font-size: 0.875rem; margin-top: 0; }
.hotspot__popup .hotspot__popup-title a {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.entry-content strong { font-weight: 700; }
.entry-content em     { font-style: italic; }

.entry-content blockquote {
	border-left: 3px solid var(--color-accent);
	padding-left: 20px;
	color: var(--color-muted);
	font-style: italic;
}

.entry-content table {
	width: 100%;
	border-collapse: collapse;
	font-size: var(--fs-small);
}

.entry-content th,
.entry-content td {
	border: 1px solid var(--color-border);
	padding: 10px 14px;
	text-align: left;
}

.entry-content th {
	background: var(--color-bg-soft);
	font-weight: 700;
}

/* ============================================================
   BLOG GRID (archive.php, search.php)
   ============================================================ */

.archive-page,
.search-page {
	padding-block: clamp(40px, 5vw, 72px);
}

.single-post {
	padding-block: 0;
}

.archive-page__header,
.search-page__header {
	margin-bottom: clamp(32px, 4vw, 56px);
}

.archive-page__title,
.search-page__title {
	font-family: var(--font-heading);
	font-weight: 400;
	font-size: var(--fs-h1);
	color: var(--color-ink);
	margin-bottom: 8px;
}

.archive-page__desc {
	color: var(--color-muted);
	font-size: 1rem;
	max-width: 600px;
}

.blog-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 32px;
	margin-bottom: 48px;
}

@media (max-width: 900px) {
	.blog-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 560px) {
	.blog-grid { grid-template-columns: 1fr; }
}

.blog-card {
	overflow: hidden;
	background: var(--color-bg);
	display: flex;
	flex-direction: column;
	border-radius: var(--radius);
	border: 1px solid var(--color-border);
	transition: box-shadow 0.3s var(--ease), border-color 0.3s var(--ease);
}

.blog-card:hover {
	box-shadow: 0 6px 24px rgba(51, 47, 44, 0.09);
	border-color: transparent;
}

.blog-card__thumb {
	display: block;
	overflow: hidden;
	aspect-ratio: 16/9;
}

.blog-card__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.45s var(--ease);
}

.blog-card:hover .blog-card__thumb img {
	transform: scale(1.04);
}

.blog-card__body {
	padding: 20px 22px 24px;
	display: flex;
	flex-direction: column;
	flex: 1;
	gap: 10px;
}

.blog-card__meta {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: var(--fs-small);
	color: var(--color-muted);
}

.blog-card__meta-sep {
	opacity: 0.5;
}

.blog-card__type {
	background: var(--color-bg-soft);
	padding: 2px 8px;
	border-radius: 4px;
}

.blog-card__title {
	font-family: var(--font-heading);
	font-size: 1.0625rem;
	line-height: 1.35;
}

.blog-card__title a {
	color: var(--color-ink);
	transition: color var(--dur) var(--ease);
}

.blog-card__title a:hover {
	color: var(--color-accent);
}

.blog-card__excerpt {
	font-size: var(--fs-small);
	color: var(--color-muted);
	line-height: var(--lh-body);
	flex: 1;
}

.blog-card__read-more {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	color: var(--color-accent);
	transition: gap var(--dur) var(--ease);
	margin-top: auto;
}

.blog-card__read-more:hover {
	gap: 8px;
}

.archive-page__pagination {
	margin-top: 16px;
}

.archive-page__pagination .nav-links {
	display: flex;
	align-items: center;
	gap: 8px;
	justify-content: center;
}

.archive-page__pagination .page-numbers {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 1.5px solid var(--color-border);
	font-size: var(--fs-small);
	font-weight: 600;
	color: var(--color-ink);
	transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease);
}

.archive-page__pagination .page-numbers.current,
.archive-page__pagination .page-numbers:hover {
	background: var(--color-accent);
	border-color: var(--color-accent);
	color: #fff;
}

/* ============================================================
   BLOG CATEGORY ARCHIVE (category.php)
   ============================================================ */

.cat-archive {
	padding-block: clamp(40px, 5vw, 72px);
}

.cat-archive__head {
	margin-bottom: clamp(32px, 4vw, 52px);
}

.cat-archive__title {
	font-family: var(--font-heading);
	font-weight: 400;
	font-size: var(--fs-h1);
	color: var(--color-ink);
	margin-bottom: 12px;
}

.cat-archive__intro {
	font-size: 1.0625rem;
	color: var(--color-muted);
	line-height: var(--lh-body);
}

.cat-archive__desc2 {
	padding-top: clamp(32px, 4vw, 52px);
	font-size: 0.9375rem;
	color: var(--color-muted);
	line-height: var(--lh-body);
}

.cat-archive__desc2 h2,
.cat-archive__desc2 h3 {
	font-family: var(--font-heading);
	font-weight: 400;
	color: var(--color-ink);
	margin-bottom: 10px;
	margin-top: 28px;
}

.cat-archive__desc2 h2 { font-size: 1.35rem; }
.cat-archive__desc2 h3 { font-size: 1.1rem; }

.cat-archive__desc2 p { margin-bottom: 14px; }

/* ============================================================
   SINGLE POST
   ============================================================ */

.post-article__title {
	font-family: var(--font-heading);
	font-size: var(--fs-h1);
	font-weight: 400;
	color: var(--color-ink);
	margin-bottom: 16px;
}

.post-article__body {
	margin-bottom: 48px;
}

.post-article__footer {
	padding-top: 20px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.post-article__author {
	display: flex;
	align-items: flex-start;
	gap: 16px;
}

.post-article__author-avatar {
	border-radius: 50%;
	flex-shrink: 0;
}

.post-article__author-name {
	display: block;
	font-family: var(--font-heading);
	font-size: 1rem;
	margin-bottom: 4px;
}

.post-article__author-bio {
	font-size: var(--fs-small);
	color: var(--color-muted);
	line-height: var(--lh-body);
}

.post-nav {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.post-nav__link {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 16px 20px;
	border: 1px solid var(--color-border);
	transition: border-color var(--dur) var(--ease);
}

.post-nav__link--prev {
	text-align: left;
}

.post-nav__link--next {
	text-align: right;
}

.post-nav__link:hover {
	border-color: var(--color-accent);
}

.post-nav__label {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 0.6875rem;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	font-weight: 700;
	color: var(--color-muted);
}

.post-nav__title {
	font-size: var(--fs-small);
	font-weight: 600;
	color: var(--color-ink);
}

/* TOC: indicator vizual pentru items cu sub-headings */
.post-toc__item--has-sub > .post-toc__row > .post-toc__link {
	font-weight: 600;
}

/* FAQ în articol: modificator de spacing față de FAQ-ul din listing */
.post-faq {
	margin-block: 40px;
}

/* Wrapper FAQ items (fără border propriu — border e pe item) */
.blog-cat-faq__list {
	display: block;
}

/* Buton copy link — stare "Copiat!" controlată din JS prin atribut */
.post-article__share-copy[data-copied="true"] {
	border-color: #22a06b;
	color: #22a06b;
}

/* Label din butonul copy (JS îl schimbă în "Copiat!") */
.post-article__share-copy-label {
	display: inline;
}

/* ============================================================
   ARTICLE PRODUCTS CAROUSEL (bloc WP din articole de blog)
   ============================================================ */

.article-products-carousel {
	padding-block: clamp(32px, 4vw, 56px);
	margin-top: clamp(32px, 4vw, 56px);
}

.article-products-carousel__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: clamp(24px, 3vw, 36px);
}

.article-products-carousel__title {
	font-family: var(--font-heading);
	font-size: clamp(1.2rem, 2vw, 1.5rem);
	font-weight: 400;
	color: var(--color-ink);
	margin: 0;
}

.article-products-carousel__nav {
	display: flex;
	gap: 8px;
	flex-shrink: 0;
}

@media (max-width: 767px) {
	.article-products-carousel__head {
		flex-wrap: wrap;
		gap: 12px;
	}
	.article-products-carousel__title {
		font-size: 1.15rem;
	}
}

/* Resetează override-urile .entry-content înăuntrul carouselului de articol */
.article-products-carousel .product-card__cat,
.article-products-carousel a.product-card__cat {
	color: var(--color-muted);
	text-decoration: none;
}
.article-products-carousel .product-card__cat:hover { color: var(--color-accent); }

.article-products-carousel .product-card__title {
	font-size: 0.9375rem;
	margin-top: 0;
}
.article-products-carousel .product-card__title a {
	color: var(--color-ink);
	text-decoration: none;
}
.article-products-carousel .product-card__title a:hover { color: var(--color-accent); }

.article-products-carousel .pc-cart-btn,
.article-products-carousel .product-card .button {
	background: var(--color-accent);
	color: #fff !important;
	text-decoration: none !important;
	border-radius: var(--radius-pill);
}
.article-products-carousel .pc-cart-btn:hover,
.article-products-carousel .product-card .button:hover {
	background: var(--color-accent-soft);
	color: #fff !important;
	text-decoration: none !important;
}

/* ============================================================
   BLOG MAIN PAGE (index.php)
   ============================================================ */

.blog-listing {
	padding-block: clamp(40px, 5vw, 64px);
	display: flex;
	flex-direction: column;
	gap: clamp(56px, 7vw, 88px);
}

.blog-cat-section {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.blog-cat-section__name {
	font-family: var(--font-heading);
	font-size: clamp(1.4rem, 2.5vw, 2rem);
	font-weight: 400;
	color: var(--color-ink);
	margin: 0;
}

.blog-cat-section__name a {
	color: inherit;
	transition: color var(--dur) var(--ease);
}

.blog-cat-section__name a:hover {
	color: var(--color-accent);
}

.blog-cat-section__cover-link {
	display: block;
	border-radius: var(--radius);
	overflow: hidden;
	aspect-ratio: 21/7;
	max-height: 360px;
}

.blog-cat-section__cover {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.4s var(--ease);
}

.blog-cat-section__cover-link:hover .blog-cat-section__cover {
	transform: scale(1.03);
}

.blog-cat-section__desc {
	color: var(--color-muted);
	font-size: 0.9375rem;
	line-height: var(--lh-body);
	margin: 0;
	max-width: 720px;
}

.blog-cat-section__posts {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

/* 1 articol: card mai lat, centrat */
.blog-cat-section__posts--count-1 {
	grid-template-columns: minmax(0, 480px);
}

/* 2 articole: 2 coloane egale */
.blog-cat-section__posts--count-2 {
	grid-template-columns: repeat(2, 1fr);
}

/* 3 articole: explicit 3 coloane (redundant față de default, dar explicit) */
.blog-cat-section__posts--count-3 {
	grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 640px) {
	.blog-cat-section__posts,
	.blog-cat-section__posts--count-2,
	.blog-cat-section__posts--count-3 {
		grid-template-columns: 1fr;
		gap: 12px;
	}
}

.blog-mini-card {
	display: flex;
	flex-direction: column;
	gap: 10px;
	text-decoration: none;
	color: inherit;
}

.blog-mini-card__img {
	border-radius: var(--radius-sm);
	overflow: hidden;
	aspect-ratio: 16/9;
	flex-shrink: 0;
}

.blog-mini-card__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.4s var(--ease);
}

.blog-mini-card:hover .blog-mini-card__img img {
	transform: scale(1.04);
}

.blog-mini-card__title {
	font-family: var(--font-heading);
	font-size: 0.9375rem;
	font-weight: 400;
	line-height: 1.35;
	color: var(--color-ink);
	transition: color var(--dur) var(--ease);
}

.blog-mini-card:hover .blog-mini-card__title {
	color: var(--color-accent);
}

.blog-cat-section__cta {
	grid-area: cta;
}

/* ============================================================
   POST BREADCRUMB BAR (single.php)
   ============================================================ */

.post-breadcrumb-bar {
	background: var(--color-bg-alt);
	padding-block: 12px;
}

.post-breadcrumb-bar--bg {
	position: relative;
	background-size: cover;
	background-position: center;
	padding-block: 20px;
}

.post-breadcrumb-bar__overlay {
	position: absolute;
	inset: 0;
	background: rgba(30, 25, 20, 0.55);
}

.post-breadcrumb-bar__inner {
	position: relative;
	z-index: 1;
}

.post-breadcrumb-bar__crumbs {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px 6px;
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: var(--fs-small);
	color: var(--color-muted);
}

.post-breadcrumb-bar__crumbs li + li::before {
	content: '/';
	margin-right: 2px;
	opacity: 0.5;
}

.post-breadcrumb-bar__crumbs a {
	color: var(--color-muted);
	transition: color var(--dur) var(--ease);
}

.post-breadcrumb-bar__crumbs a:hover {
	color: var(--color-accent);
}

.post-breadcrumb-bar--bg .post-breadcrumb-bar__crumbs,
.post-breadcrumb-bar--bg .post-breadcrumb-bar__crumbs a {
	color: rgba(255, 255, 255, 0.78);
}

.post-breadcrumb-bar--bg .post-breadcrumb-bar__crumbs a:hover {
	color: #fff;
}

/* ============================================================
   SINGLE POST — new structure classes
   ============================================================ */

.post-article__cover {
	border-radius: var(--radius);
	overflow: hidden;
	margin-top: clamp(24px, 3vw, 40px);
	margin-bottom: 32px;
}

.post-article__cover-img {
	width: 100%;
	display: block;
	max-height: 480px;
	object-fit: cover;
}

.post-article__content {
	padding-block-start: clamp(24px, 3vw, 40px);
	padding-block-end: clamp(20px, 2.5vw, 36px);
}

.post-article__meta-bar {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px 10px;
	font-size: var(--fs-small);
	color: var(--color-muted);
	margin-bottom: 28px;
}

.post-article__cat-link {
	color: var(--color-accent);
	font-weight: 600;
	transition: opacity var(--dur) var(--ease);
}

.post-article__cat-link:hover {
	opacity: 0.8;
}

.post-article__meta-sep {
	opacity: 0.4;
}

/* Table of contents */
.post-toc {
	background: var(--color-bg-soft);
	padding: 22px 28px;
	margin-bottom: 40px;
}

.post-toc__label {
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--color-accent);
	margin-bottom: 14px;
}

.post-toc__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 7px;
}

.post-toc--cols-2 .post-toc__list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 7px 40px;
}

@media (max-width: 700px) {
	.post-toc--cols-2 .post-toc__list {
		grid-template-columns: 1fr;
	}
}

.post-toc__item {
	padding: 0;
}

.post-toc__row {
	display: flex;
	align-items: center;
	gap: 4px;
}

.post-toc__link {
	font-size: 0.875rem;
	color: var(--color-ink);
	transition: color var(--dur) var(--ease);
	flex: 1;
	line-height: 1.45;
}

.post-toc__link:hover {
	color: var(--color-accent);
}

.post-toc__toggle {
	flex-shrink: 0;
	width: 20px;
	height: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--color-muted);
	transition: transform var(--dur) var(--ease);
	background: none;
	border: none;
	cursor: pointer;
	padding: 0;
}

.post-toc__toggle[aria-expanded="true"] {
	transform: rotate(180deg);
}

.post-toc__sub {
	list-style: none;
	margin: 4px 0 2px 12px;
	padding: 0;
	display: none;
	flex-direction: column;
	gap: 4px;
}

.post-toc__sub.is-open {
	display: flex;
}

.post-toc__sub-item {
	padding: 0;
}

.post-toc__sub-link {
	font-size: 0.8125rem;
	color: var(--color-muted);
	transition: color var(--dur) var(--ease);
	display: block;
	line-height: 1.4;
}

.post-toc__sub-link:hover {
	color: var(--color-accent);
}

/* Post bottom: tags + share */
.post-article__bottom {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 16px 24px;
	padding-block: 16px;
	margin-bottom: 20px;
}

.post-article__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	flex: 1;
}

.post-article__tag {
	font-size: 0.78rem;
	color: var(--color-muted);
	border: 1px solid var(--color-border);
	border-radius: 100px;
	padding: 3px 10px;
	transition: border-color var(--dur) var(--ease), color var(--dur) var(--ease);
	text-decoration: none;
}

.post-article__tag:hover {
	border-color: var(--color-accent);
	color: var(--color-accent);
}

.post-article__share {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
}

.post-article__share-label {
	font-size: 0.78rem;
	font-weight: 600;
	color: var(--color-muted);
	text-transform: uppercase;
	letter-spacing: 0.06em;
	margin-right: 2px;
}

.post-article__share-btn {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 0.8125rem;
	color: var(--color-ink);
	border: 1px solid var(--color-border);
	border-radius: 100px;
	padding: 5px 12px;
	transition: border-color var(--dur) var(--ease), color var(--dur) var(--ease);
	background: none;
	cursor: pointer;
	text-decoration: none;
	line-height: 1.3;
}

.post-article__share-btn:hover {
	border-color: var(--color-accent);
	color: var(--color-accent);
}

/* Blog FAQ accordion (single.php) */
.blog-cat-faq {
	margin-block: 36px;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	overflow: hidden;
}

.blog-cat-faq__title {
	font-family: var(--font-heading);
	font-size: 1.35rem;
	font-weight: 400;
	padding: 18px 24px;
	border-bottom: 1px solid var(--color-border);
	margin: 0;
	background: var(--color-bg-alt);
}

.blog-cat-faq__item {
	border-bottom: 1px solid var(--color-border);
}

.blog-cat-faq__item:last-child {
	border-bottom: none;
}

.blog-cat-faq__question {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	width: 100%;
	text-align: left;
	padding: 18px 24px;
	font-size: 1.0625rem;
	font-weight: 600;
	line-height: 1.35;
	color: var(--color-ink);
	cursor: pointer;
	list-style: none;
	transition: color var(--dur) var(--ease), background var(--dur) var(--ease);
}

@media (max-width: 600px) {
	.blog-cat-faq__question {
		font-size: 0.9375rem;
		padding: 14px 16px;
	}
	.blog-cat-faq__answer {
		padding: 12px 16px 16px;
	}
	.blog-cat-faq__title {
		padding: 14px 16px;
	}
}

.blog-cat-faq__question::after {
	content: '';
	display: block;
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23332F2C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	transition: transform 0.25s var(--ease);
}

.blog-cat-faq__question::-webkit-details-marker {
	display: none;
}

.blog-cat-faq__question:hover {
	color: var(--color-accent);
	background: var(--color-bg-soft);
}

.blog-cat-faq__item[open] > .blog-cat-faq__question {
	color: var(--color-accent);
}

.blog-cat-faq__item[open] > .blog-cat-faq__question::after {
	transform: rotate(180deg);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23E6AF5D' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
}

.blog-cat-faq__answer {
	padding: 14px 24px 20px;
	font-size: 0.875rem;
	color: var(--color-muted);
	line-height: var(--lh-body);
	border-top: 1px solid var(--color-border);
}

/* Related posts */
.related-posts {
	padding-block: clamp(20px, 3vw, 36px);
}

.related-posts__title {
	font-family: var(--font-heading);
	font-size: clamp(1.2rem, 2vw, 1.5rem);
	font-weight: 400;
	color: var(--color-ink);
	margin-bottom: clamp(20px, 3vw, 32px);
}

/* ============================================================
   CONTACT PAGE
   ============================================================ */

.contact-info-section {
	padding-block: clamp(48px, 6vw, 80px);
	background: var(--color-bg-alt);
	text-align: center;
}

.contact-info-section__label {
	font-size: 0.72rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--color-accent);
	margin-bottom: 12px;
}

.contact-info-section__title {
	font-family: var(--font-heading);
	font-size: clamp(2rem, 4vw, 3rem);
	font-weight: 400;
	color: var(--color-ink);
	margin-bottom: 16px;
}

.contact-info-section__desc {
	max-width: 560px;
	margin-inline: auto;
	font-size: 0.9rem;
	color: var(--color-muted);
	line-height: 1.7;
	margin-bottom: 48px;
}

.contact-cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

@media (max-width: 900px) {
	.contact-cards {
		grid-template-columns: 1fr 1fr;
		gap: 20px;
	}
}

@media (max-width: 560px) {
	.contact-cards {
		grid-template-columns: 1fr;
		gap: 16px;
	}
}

.contact-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 32px 24px;
	background: var(--color-bg);
}

.contact-card__icon {
	color: var(--color-accent);
	margin-bottom: 16px;
	line-height: 1;
}

.contact-card__title {
	font-family: var(--font-heading);
	font-size: 1.15rem;
	font-weight: 400;
	color: var(--color-ink);
	margin-bottom: 12px;
}

.contact-card__text {
	font-size: 0.88rem;
	color: var(--color-muted);
	line-height: 1.65;
	margin-bottom: 4px;
	text-align: center;
}

.contact-card__link {
	color: var(--color-accent);
	font-weight: 500;
}

.contact-card__link:hover {
	text-decoration: underline;
}

.contact-form-section {
	padding-block: clamp(48px, 6vw, 80px);
}

.contact-form-section__inner {
	max-width: 760px;
}

.contact-form-section__title {
	font-family: var(--font-heading);
	font-size: clamp(1.6rem, 3vw, 2.2rem);
	font-weight: 400;
	color: var(--color-ink);
	text-align: center;
	margin-bottom: 12px;
}

.contact-form-section__desc {
	text-align: center;
	font-size: 0.92rem;
	color: var(--color-muted);
	line-height: 1.7;
	max-width: 520px;
	margin-inline: auto;
	margin-bottom: 32px;
}

.contact-form__submit {
	display: flex;
	justify-content: center;
	margin-top: 8px;
}

@media (max-width: 768px) {
	.contact-info-section {
		padding-block: 36px 40px;
	}

	.contact-info-section__title {
		font-size: clamp(1.6rem, 6vw, 2.2rem);
	}

	.contact-info-section__desc {
		font-size: 0.88rem;
		margin-bottom: 32px;
	}

	.contact-card {
		padding: 24px 20px;
	}

	.contact-form-section {
		padding-block: 36px 48px;
	}

	.contact-form-section__inner {
		max-width: 100%;
	}

	.contact-form-section__title {
		font-size: clamp(1.3rem, 5vw, 1.8rem);
	}

	.contact-form-section__desc {
		font-size: 0.88rem;
		margin-bottom: 24px;
	}

	.contact-form__submit .btn {
		width: 100%;
		justify-content: center;
	}
}

@media (max-width: 560px) {
	.contact-info-section {
		padding-block: 28px 32px;
	}

	.contact-card {
		flex-direction: row;
		align-items: flex-start;
		text-align: left;
		gap: 16px;
		padding: 20px 16px;
	}

	.contact-card__icon {
		flex-shrink: 0;
		margin-bottom: 0;
		margin-top: 2px;
	}

	.contact-card__body {
		flex: 1;
	}

	.contact-card__title {
		text-align: left;
		margin-bottom: 6px;
	}

	.contact-card__text {
		text-align: left;
	}
}

.oferta-info-section {
	background: var(--color-bg-alt);
}

@media (max-width: 480px) {
	.contact-info-section {
		padding-block: 20px 24px;
	}

	.contact-info-section__label {
		margin-bottom: 6px;
	}

	.contact-info-section__title {
		font-size: clamp(1.3rem, 6vw, 1.6rem);
		margin-bottom: 10px;
	}

	.contact-info-section__desc {
		font-size: 0.85rem;
		margin-bottom: 18px;
	}

	.contact-cards {
		gap: 10px;
	}

	.contact-card {
		padding: 14px 12px;
		gap: 12px;
	}

	.contact-card__icon svg {
		width: 26px;
		height: 26px;
	}

	.contact-card__title {
		font-size: 1rem;
		margin-bottom: 4px;
	}

	.contact-form-section {
		padding-block: 24px 32px;
	}

	.contact-form-section__title {
		font-size: clamp(1.25rem, 5vw, 1.5rem);
		margin-bottom: 10px;
	}

	.contact-form-section__desc {
		font-size: 0.85rem;
		margin-bottom: 14px;
	}

	.contact-form,
	.oferta-form {
		gap: 12px;
	}
}

.contact-form-wrap__title,
.oferta-form-wrap__title {
	font-size: var(--fs-h3);
	color: var(--color-ink);
	margin-bottom: 24px;
}

/* Formulare generice */
.contact-form,
.oferta-form {
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.contact-form .form-row,
.oferta-form .form-row {
	display: grid;
	gap: 16px;
}

.contact-form .form-row--2,
.oferta-form .form-row--2 {
	grid-template-columns: 1fr 1fr;
}

@media (max-width: 768px) {
	.contact-form .form-row--2,
	.oferta-form .form-row--2 { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 560px) {
	.form-row--2 { grid-template-columns: 1fr; }

	.form-field input,
	.form-field select,
	.form-field textarea {
		font-size: 1rem;
		padding: 13px 14px;
	}

	.form-field textarea {
		min-height: 100px;
	}

	.cs__trigger {
		padding: 13px 16px;
		font-size: 1rem;
	}

	.contact-form,
	.oferta-form {
		gap: 14px;
	}
}

@media (max-width: 375px) {
	.contact-info-section {
		padding-block: 18px 20px;
	}

	.contact-card {
		padding: 12px 10px;
		gap: 10px;
	}

	.contact-form-section {
		padding-block: 20px 28px;
	}

	.form-field input,
	.form-field select,
	.form-field textarea {
		padding: 11px 14px;
	}

	.cs__trigger {
		padding: 11px 14px;
	}

	.contact-form,
	.oferta-form {
		gap: 10px;
	}
}

.form-field {
	display: flex;
	flex-direction: column;
}

.form-field label {
	font-size: var(--fs-small);
	font-weight: 600;
	color: var(--color-ink);
	display: block;
	margin-bottom: 8px;
}

.form-field input,
.form-field select {
	padding: 12px 20px;
	border: 1.5px solid var(--color-border);
	border-radius: var(--radius-pill);
	background: var(--color-bg);
	color: var(--color-ink);
	font-size: 0.9375rem;
	font-family: var(--font-body);
	transition: border-color var(--dur) var(--ease);
	width: 100%;
}

.form-field select {
	padding-right: 44px;
	appearance: none;
	background-image: 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='%237A726B' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 18px center;
	cursor: pointer;
}

.form-field textarea {
	padding: 12px 16px;
	border: 1.5px solid var(--color-border);
	border-radius: 14px;
	background: var(--color-bg);
	color: var(--color-ink);
	font-size: 0.9375rem;
	font-family: var(--font-body);
	transition: border-color var(--dur) var(--ease);
	width: 100%;
}

.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus {
	border-color: var(--color-accent);
	outline: none;
}

.form-field textarea {
	resize: vertical;
	min-height: 120px;
}

/* Custom select dropdown */
.cs {
	position: relative;
	width: 100%;
}

.cs__trigger {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: 12px 20px;
	border: 1.5px solid var(--color-border);
	border-radius: var(--radius-pill);
	background: var(--color-bg);
	color: var(--color-muted);
	font-size: 0.9375rem;
	font-family: var(--font-body);
	cursor: pointer;
	text-align: left;
	transition: border-color var(--dur) var(--ease), color var(--dur) var(--ease);
}

.cs--selected .cs__trigger,
.cs--open .cs__trigger {
	color: var(--color-ink);
}

.cs--open .cs__trigger,
.cs__trigger:focus {
	border-color: var(--color-accent);
	outline: none;
}

.cs__label {
	flex: 1;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.cs__arrow {
	flex-shrink: 0;
	margin-left: 8px;
	color: var(--color-muted);
	display: flex;
	align-items: center;
	transition: transform var(--dur) var(--ease);
}

.cs--open .cs__arrow {
	transform: rotate(180deg);
}

.cs__list {
	position: absolute;
	top: calc(100% + 6px);
	left: 0;
	right: 0;
	z-index: 200;
	background: var(--color-bg);
	border: 1.5px solid var(--color-border);
	border-radius: 18px;
	box-shadow: 0 8px 32px rgba(51, 47, 44, 0.12);
	overflow: hidden;
	padding: 6px;
}

.cs__option {
	padding: 10px 16px;
	font-size: 0.9375rem;
	color: var(--color-ink);
	cursor: pointer;
	border-radius: 12px;
	transition: background var(--dur) var(--ease), color var(--dur) var(--ease);
}

.cs__option:hover {
	background: var(--color-bg-soft);
}

.cs__option.is-active {
	color: var(--color-accent);
	font-weight: 600;
}

/* ================================================================ */

.form-field--gdpr {
	font-size: var(--fs-small);
}

.checkbox-label {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	cursor: pointer;
	color: var(--color-muted);
}

.checkbox-label input[type="checkbox"] {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
	margin-top: 2px;
	accent-color: var(--color-accent);
}

.checkbox-label a {
	color: var(--color-accent);
	text-decoration: underline;
}

.form-notice {
	padding: 14px 18px;
	border-radius: 12px;
	font-size: var(--fs-small);
	font-weight: 500;
}

.form-notice--success {
	background: #e8f5e9;
	color: #2e7d32;
	border: 1px solid #a5d6a7;
}

.form-notice--error {
	background: #fce4ec;
	color: #c62828;
	border: 1px solid #ef9a9a;
}

/* ============================================================
   FAQ PAGE
   ============================================================ */

/* ============================================================
   FAQ PAGE — layout 2 coloane
   ============================================================ */

.page-faq {
	background: #fff;
}

/* MAIN layout */
.faq-main {
	padding-block: clamp(40px, 6vw, 72px);
}

.faq-main__inner {
	display: grid;
	grid-template-columns: 300px 1fr;
	gap: clamp(32px, 5vw, 80px);
	align-items: start;
}

/* SIDEBAR */
.faq-sidebar {
	position: sticky;
	top: 100px;
}

.faq-sidebar__title {
	font-family: var(--font-heading);
	font-size: clamp(1.5rem, 2.5vw, 2rem);
	color: var(--color-ink);
	margin: 0 0 16px;
	line-height: 1.25;
}

.faq-sidebar__desc {
	font-size: 0.9375rem;
	color: var(--color-muted);
	line-height: var(--lh-body);
	margin: 0 0 24px;
}

.faq-sidebar__cta {
	display: inline-block;
	margin-bottom: 32px;
}

.faq-sidebar__img-wrap {
	overflow: hidden;
}

.faq-sidebar__img {
	width: 100%;
	height: 260px;
	object-fit: cover;
	display: block;
	border-radius: 0;
}

/* TABS nav */
.faq-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	border-bottom: 2px solid var(--color-border);
	margin-bottom: 32px;
}

.faq-tab {
	padding: 14px 24px;
	font-size: 0.9375rem;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: var(--color-muted);
	background: none;
	border: none;
	border-bottom: 2px solid transparent;
	margin-bottom: -2px;
	cursor: pointer;
	transition: color var(--dur) var(--ease), border-color var(--dur) var(--ease);
}

.faq-tab:hover {
	color: var(--color-ink);
}

.faq-tab.is-active {
	color: var(--color-ink);
	border-bottom-color: var(--color-accent);
}

/* PANEL */
.faq-panel {
	display: block;
}

.faq-panel[hidden] {
	display: none;
}

/* ACCORDION */
.faq-accordion {
	display: flex;
	flex-direction: column;
}

.faq-item {
	background: #fff;
}

.faq-item + .faq-item {
	border-top: 1px solid var(--color-border);
}

.faq-item:has(.faq-item__question[aria-expanded="true"]) + .faq-item {
	border-top-color: transparent;
}

.faq-item__question {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 22px 0;
	text-align: left;
	font-size: 1.0625rem;
	font-weight: 600;
	color: var(--color-ink);
	cursor: pointer;
	transition: color var(--dur) var(--ease);
	background: none;
	border: none;
}

.faq-item__question:hover {
	color: var(--color-accent);
}

.faq-item__question[aria-expanded="true"] {
	color: var(--color-accent);
}

.faq-item__icon {
	flex-shrink: 0;
	color: var(--color-accent);
	transition: transform 0.25s var(--ease);
}

.faq-item__question[aria-expanded="true"] .faq-item__icon {
	transform: rotate(180deg);
}

.faq-item__answer {
	padding: 0 0 24px;
	font-size: 1rem;
	line-height: var(--lh-body);
	color: var(--color-muted);
}

.faq-item__answer[hidden] {
	display: none;
}

.faq-item__answer p { margin: 0 0 10px; }
.faq-item__answer p:last-child { margin-bottom: 0; }
.faq-item__answer ul,
.faq-item__answer ol {
	margin: 8px 0 10px 20px;
	padding: 0;
}
.faq-item__answer li { margin-bottom: 4px; }
.faq-item__answer strong { color: var(--color-ink); font-weight: 600; }
.faq-item__answer a { color: var(--color-accent); text-decoration: underline; }
.faq-item__answer a:hover { color: var(--color-ink); }

/* ---- Responsive FAQ ---- */

/* Tableta landscape (1024px) */
@media (max-width: 1024px) {
	.faq-main__inner {
		grid-template-columns: 260px 1fr;
		gap: 40px;
	}
	.faq-sidebar__img { height: 220px; }
	.faq-tab { padding: 12px 18px; font-size: 0.875rem; }
}

/* Tableta portrait (900px) - coloana unica */
@media (max-width: 900px) {
	.faq-main { padding-block: 40px 48px; }

	.faq-main__inner {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.faq-sidebar {
		position: static;
		display: grid;
		grid-template-columns: 1fr 240px;
		gap: 24px 32px;
		align-items: start;
	}

	.faq-sidebar__title { font-size: 1.5rem; }

	.faq-sidebar__img-wrap {
		grid-row: 1 / span 4;
		grid-column: 2;
	}

	.faq-sidebar__img { height: 100%; min-height: 200px; object-fit: cover; }

	.faq-sidebar__title,
	.faq-sidebar__desc,
	.faq-sidebar__cta {
		grid-column: 1;
	}
}

/* Mobile (640px) */
@media (max-width: 640px) {
	.faq-main { padding-block: 28px 40px; }
	.faq-main__inner { gap: 24px; }

	/* Reset grid si forteaza flex coloana */
	.faq-sidebar {
		display: flex !important;
		flex-direction: column !important;
		gap: 14px;
		align-items: stretch;
	}

	.faq-sidebar__title {
		font-size: 1.4rem;
		margin: 0;
	}

	.faq-sidebar__desc { margin: 0; }

	.faq-sidebar__cta {
		margin-bottom: 0;
		align-self: flex-start;
	}

	/* Imaginea full-width sub buton */
	.faq-sidebar__img-wrap {
		width: 100% !important;
		grid-row: unset !important;
		grid-column: unset !important;
		margin-top: 8px;
	}

	.faq-sidebar__img {
		width: 100% !important;
		height: 220px;
		object-fit: cover;
		display: block;
	}

	/* Tabs scrollabili orizontal - iese din container ca sa aiba padding dreapta corect */
	.faq-content {
		overflow: hidden; /* clipuire fara scrollbar pe parinte */
	}

	.faq-tabs {
		overflow-x: auto;
		flex-wrap: nowrap;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		margin-bottom: 20px;
		gap: 0;
		/* Negative margin + padding trick pentru padding dreapta la scroll */
		margin-inline: calc(-1 * var(--gap));
		padding-inline: var(--gap);
	}
	.faq-tabs::-webkit-scrollbar { display: none; }

	.faq-tab {
		white-space: nowrap;
		flex-shrink: 0;
		padding: 10px 14px;
		font-size: 0.8125rem;
	}

	.faq-item__question {
		padding: 16px 0;
		font-size: 0.9375rem;
		gap: 12px;
	}

	.faq-item__answer {
		font-size: 0.9375rem;
		padding-bottom: 16px;
	}
}

/* Mobile mic (400px) */
@media (max-width: 400px) {
	.faq-sidebar__title { font-size: 1.25rem; }
	.faq-sidebar__img { height: 180px; }
	.faq-tab { padding: 9px 12px; font-size: 0.75rem; }
	.faq-item__question { font-size: 0.875rem; }
	.faq-item__answer { font-size: 0.875rem; }
}

/* ============================================================
   OFERTĂ PAGE
   ============================================================ */

.oferta-page {
	padding-block: clamp(48px, 6vw, 80px);
}

.oferta-page__inner {
	display: grid;
	grid-template-columns: 1fr 1.5fr;
	gap: 64px;
	align-items: start;
}

@media (max-width: 900px) {
	.oferta-page__inner { grid-template-columns: 1fr; gap: 48px; }
}

.oferta-info__title {
	font-size: var(--fs-h2);
	color: var(--color-ink);
	margin-bottom: 16px;
}

.oferta-info__desc {
	color: var(--color-muted);
	line-height: var(--lh-body);
	margin-bottom: 28px;
}

.oferta-benefits {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.oferta-benefit {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 0.9375rem;
	color: var(--color-ink);
}

.oferta-benefit__check {
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: var(--color-accent);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.75rem;
	font-weight: 700;
	flex-shrink: 0;
}

/* ============================================================
   DESPRE PAGE
   ============================================================ */

.despre-section-label {
	font-size: 0.72rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--color-accent);
	margin-bottom: 16px;
}

/* Hero */
.despre-hero {
	position: relative;
	background: var(--color-bg-alt);
	background-size: cover;
	background-position: center;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-block: 28px 24px;
}

.despre-hero--has-bg {
	padding-block: 40px 32px;
}

.despre-hero__overlay {
	position: absolute;
	inset: 0;
	background: rgba(51, 47, 44, 0.46);
}

.despre-hero__inner {
	position: relative;
	z-index: 1;
	text-align: center;
	width: 100%;
}

.despre-hero--has-bg .despre-hero__title,
.despre-hero--has-bg .despre-hero__sub,
.despre-hero--has-bg .despre-hero__subtitle {
	color: #fff;
}

.despre-hero__title {
	font-size: clamp(1.3rem, 2.5vw, 1.9rem);
	font-weight: 400;
	color: var(--color-ink);
	margin: 0 0 6px;
}

.brand-archive-hero__logo {
	display: block;
	max-height: 64px;
	max-width: 200px;
	width: auto;
	height: auto;
	object-fit: contain;
	margin: 0 auto 12px;
	filter: grayscale(100%);
	opacity: 0.7;
}

.brand-archive-hero__logo--light {
	filter: brightness(0) invert(1);
	opacity: 0.9;
}

.despre-hero__sub,
.despre-hero__subtitle {
	color: var(--color-muted);
	margin: 0 0 8px;
	font-size: 0.85rem;
}

.despre-hero__breadcrumb ol {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 4px 6px;
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 0.72rem;
	letter-spacing: 0.02em;
}

.despre-hero__breadcrumb li + li::before {
	content: '/';
	margin-right: 6px;
	opacity: .5;
}

.despre-hero__breadcrumb a {
	color: var(--color-muted);
	transition: color var(--dur) var(--ease);
}

.despre-hero__breadcrumb a:hover {
	color: var(--color-accent);
}

.despre-hero__breadcrumb li[aria-current="page"] {
	color: var(--color-muted);
	opacity: .75;
}

.despre-hero--has-bg .despre-hero__breadcrumb a,
.despre-hero--has-bg .despre-hero__breadcrumb li[aria-current="page"] {
	color: rgba(255, 255, 255, 0.75);
}

.despre-hero--has-bg .despre-hero__breadcrumb a:hover {
	color: #fff;
}

@media (max-width: 768px) {
	.despre-hero--has-bg { padding-block: 28px 22px; }
	.despre-hero__title { font-size: 1.2rem; }
}

@media (max-width: 480px) {
	.despre-hero { padding-block: 20px 16px; }
	.despre-hero__title { font-size: 1.1rem; }
}

/* Intro: Cine suntem */
.despre-intro {
	padding-block: clamp(40px, 7vw, 96px);
	background: var(--color-bg-alt);
}

.despre-intro__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: clamp(24px, 5vw, 72px);
	align-items: start;
}

.despre-intro__left {
	display: flex;
	flex-direction: column;
	align-items: stretch;
}

.despre-intro__img-wrap {
	line-height: 0;
	margin: 0;
	padding: 0;
}

.despre-intro__img1 {
	display: block;
	width: 100%;
	height: 700px;
	object-fit: cover;
}

.despre-intro__desc {
	font-size: 0.88rem;
	color: var(--color-muted);
	line-height: 1.7;
	margin: 0;
	padding-top: 20px;
}

.despre-intro__right {
	display: flex;
	flex-direction: column;
}

.despre-intro__title {
	font-size: clamp(1.4rem, 2.8vw, 2.2rem);
	color: var(--color-ink);
	line-height: 1.25;
	margin-bottom: 20px;
}

.despre-intro__img2-wrap {
	line-height: 0;
	flex: 1 1 auto;
}

.despre-intro__img2 {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 200px;
	max-height: 700px;
	object-fit: cover;
}

@media (max-width: 1024px) {
	.despre-intro__img1 { height: 520px; }
	.despre-intro__img2 { max-height: 520px; }
}

@media (max-width: 768px) {
	.despre-intro__grid {
		grid-template-columns: 1fr;
		gap: 0;
	}
	.despre-intro__right {
		order: -1;
		padding: 32px 0 24px;
	}
	.despre-intro__left { order: 1; }
	.despre-intro__img2-wrap { display: none; }
	.despre-intro__img1 { height: 320px; }
	.despre-intro__desc { padding-top: 16px; }
	.despre-intro__title {
		font-size: clamp(1.3rem, 5vw, 1.8rem);
		margin-bottom: 0;
	}
}

@media (max-width: 480px) {
	.despre-intro__img1 { height: 260px; }
}

/* Mission */
.despre-mission {
	position: relative;
	min-height: 480px;
	background: var(--color-ink);
	background-size: cover;
	background-position: center;
	display: flex;
	align-items: center;
}

.despre-mission__overlay {
	position: absolute;
	inset: 0;
	background: rgba(51, 47, 44, 0.56);
}

.despre-mission__inner {
	position: relative;
	z-index: 1;
	max-width: 520px;
	padding-block: clamp(48px, 7vw, 88px);
}

.despre-mission__title {
	font-size: clamp(1.8rem, 3.5vw, 2.8rem);
	color: #fff;
	margin-bottom: 16px;
}

.despre-mission__desc {
	color: rgba(255, 255, 255, 0.85);
	font-size: 1rem;
	line-height: 1.65;
	margin-bottom: 28px;
}

.despre-mission__cta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: transparent;
	color: #fff;
	border: 1px solid rgba(255, 255, 255, 0.7);
	padding: 11px 28px;
	font-size: 0.8rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	transition: background var(--transition), border-color var(--transition);
}

.despre-mission__cta:hover {
	background: var(--color-accent);
	border-color: var(--color-accent);
	color: #fff;
}

/* Despre noi (a doua sectiune) */
.despre-about {
	padding-block: clamp(40px, 7vw, 88px);
	background: var(--color-bg);
}

.despre-about__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: clamp(24px, 5vw, 72px);
	align-items: stretch;
}

.despre-about__left {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.despre-about__img-wrap {
	flex: 1 1 auto;
	min-height: 0;
	line-height: 0;
}

.despre-about__img1 {
	display: block;
	width: 100%;
	height: 100%;
	max-height: 520px;
	object-fit: cover;
}

.despre-about__text-wrap {
	padding-top: 24px;
}

.despre-about__right {
	display: flex;
	align-items: stretch;
}

.despre-about__img2 {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.despre-about__title {
	font-size: clamp(1.5rem, 2.8vw, 2.4rem);
	color: var(--color-ink);
	margin-bottom: 16px;
	line-height: 1.2;
}

.despre-about__text {
	font-size: 0.9rem;
	color: var(--color-muted);
	line-height: 1.75;
	margin-bottom: 12px;
}

@media (max-width: 1024px) {
	.despre-about__img1 { max-height: 420px; }
}

@media (max-width: 768px) {
	.despre-about__grid {
		grid-template-columns: 1fr;
		gap: 0;
	}
	.despre-about__right {
		display: block;
		order: -1;
	}
	.despre-about__img2 {
		height: 260px;
		max-height: 260px;
	}
	.despre-about__left { order: 1; }
	.despre-about__img-wrap { display: none; }
	.despre-about__text-wrap { padding-top: 24px; }
	.despre-about__title { font-size: clamp(1.3rem, 5vw, 1.8rem); }
}

@media (max-width: 480px) {
	.despre-about__img2 { height: 220px; }
}

.valori__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 28px;
	margin-top: 48px;
}

@media (max-width: 900px) {
	.valori__grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 560px) {
	.valori__grid { grid-template-columns: 1fr; }
}

.valoare-card {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 28px 24px;
	background: var(--color-bg);
}

.valoare-card__icon {
	color: var(--color-accent);
}

.valoare-card__title {
	font-family: var(--font-heading);
	font-size: 1.0625rem;
	color: var(--color-ink);
}

.valoare-card__text {
	font-size: var(--fs-small);
	color: var(--color-muted);
	line-height: var(--lh-body);
}

.despre-cta {
	padding-block: clamp(48px, 6vw, 72px);
}

.despre-cta__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 40px;
	flex-wrap: wrap;
}

.despre-cta__title {
	font-size: var(--fs-h2);
	color: #fff;
	margin-bottom: 8px;
}

.despre-cta__text {
	color: rgba(255,255,255,0.75);
	max-width: 500px;
}

.despre-cta__btns {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
}

.btn--outline-light {
	background: transparent;
	border-color: rgba(255,255,255,0.4);
	color: #fff;
}

.btn--outline-light:hover {
	border-color: #fff;
	background: rgba(255,255,255,0.1);
}

/* ============================================================
   404 PAGE
   ============================================================ */

.error404 {
	padding-block: clamp(80px, 12vw, 140px);
}

.error404__inner {
	max-width: 560px;
	margin-inline: auto;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
}

.error404__code {
	font-family: var(--font-heading);
	font-size: clamp(80px, 15vw, 160px);
	line-height: 1;
	color: var(--color-border);
	letter-spacing: -4px;
}

.error404__title {
	font-size: var(--fs-h2);
	color: var(--color-ink);
}

.error404__text {
	color: var(--color-muted);
	max-width: 440px;
	line-height: var(--lh-body);
}

.error404__actions {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	justify-content: center;
}

.error404__search {
	width: 100%;
	margin-top: 8px;
}

.no-results,
.no-results-wrap {
	text-align: center;
	padding: 60px 0;
	color: var(--color-muted);
	font-size: 1rem;
}

.no-results-wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 24px;
}

/* ============================================================
   FAQ ACCORDION – JS interactivitate
   ============================================================ */

.faq-item__answer {
	padding-top: 0;
	padding-bottom: 20px;
}

.faq-item__answer[hidden] {
	display: none;
}

/* ============================================================
   SHOP PAGE — layout, sidebar, filtre
   ============================================================ */

.page-shop { background: #fff; }

/* Layout 2 coloane */
.shop-layout {
	display: grid;
	grid-template-columns: 1fr 280px;
	gap: 40px;
	align-items: start;
	padding-block: clamp(32px, 4vw, 56px);
}

.shop-layout--no-sidebar {
	grid-template-columns: 1fr;
}

/* ---- TOOLBAR ---- */
.shop-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 24px;
	padding-bottom: 16px;
	border-bottom: 1px solid var(--color-border);
}

.shop-toolbar__left,
.shop-toolbar__count {
	font-size: 0.875rem;
	color: var(--color-muted);
}

.shop-toolbar__right {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}

.shop-toolbar .woocommerce-ordering,
.shop-per-page {
	margin: 0;
	display: flex;
	align-items: stretch;
}

.shop-toolbar .woocommerce-ordering select,
.shop-per-page__select {
	box-sizing: border-box;
	height: 36px;
	min-height: 36px;
	padding: 0 32px 0 14px;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-pill);
	font-size: 0.8125rem;
	line-height: 34px;
	color: var(--color-ink);
	background-color: #fff;
	cursor: pointer;
	appearance: none;
	background-image: 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='%237A726B' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 12px center;
}

/* ---- Custom select (toolbar dropdowns) ---- */
.custom-select {
	position: relative;
	display: inline-flex;
}

.custom-select select {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
	pointer-events: none;
	z-index: -1;
}

.custom-select__trigger {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	height: 36px;
	padding: 0 14px;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-pill);
	background: #fff;
	color: var(--color-ink);
	font-size: 0.8125rem;
	font-family: var(--font-body);
	cursor: pointer;
	white-space: nowrap;
	transition: border-color .15s, box-shadow .15s;
}

.custom-select__trigger:hover,
.custom-select.is-open .custom-select__trigger {
	border-color: var(--color-accent);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-accent) 12%, transparent);
}

.custom-select__label {
	max-width: 180px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.custom-select__arrow {
	display: block;
	width: 14px;
	height: 14px;
	background-image: 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='%237A726B' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	flex-shrink: 0;
	transition: transform .2s var(--ease);
}

.custom-select.is-open .custom-select__arrow {
	transform: rotate(180deg);
}

.custom-select__list {
	position: absolute;
	top: calc(100% + 6px);
	right: 0;
	min-width: 100%;
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 14px;
	box-shadow: 0 8px 28px rgba(51, 47, 44, .14);
	overflow: hidden;
	z-index: 200;
	list-style: none;
	padding: 6px;
	margin: 0;
	animation: customSelectIn .15s var(--ease) both;
}

@keyframes customSelectIn {
	from { opacity: 0; transform: translateY(-6px); }
	to   { opacity: 1; transform: translateY(0); }
}

.custom-select__option {
	padding: 9px 14px;
	font-size: 0.8125rem;
	color: var(--color-ink);
	border-radius: 4px;
	cursor: pointer;
	white-space: nowrap;
	transition: background .12s;
}

.custom-select__option:hover {
	background: var(--color-bg-soft);
}

.custom-select__option.is-selected {
	background: var(--color-ink);
	color: #fff;
	font-weight: 600;
}

/* ---- SIDEBAR ---- */
.shop-sidebar {
	position: sticky;
	top: 100px;
}

.shop-sidebar__mobile-toggle {
	display: none;
	width: 100%;
	align-items: center;
	gap: 8px;
	padding: 12px 16px;
	background: var(--color-bg-soft);
	border: 1px solid var(--color-border);
	border-radius: 14px;
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--color-ink);
	cursor: pointer;
	margin-bottom: 12px;
}

.shop-sidebar__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 20px;
	height: 20px;
	padding: 0 5px;
	background: var(--color-accent);
	color: #fff;
	border-radius: 999px;
	font-size: 0.75rem;
	font-weight: 700;
	margin-left: auto;
}

/* ---- SIDEBAR WIDGET ---- */
.sidebar-widget {
	border-bottom: 1px solid var(--color-border);
	padding-bottom: 0;
	margin-bottom: 0;
}

.shop-sidebar__inner > .sidebar-widget:last-child {
	border-bottom: none;
}

.sidebar-widget__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	padding: 16px 0;
	width: 100%;
	background: none;
	border: none;
	cursor: pointer;
	text-align: left;
}

.sidebar-widget__title {
	font-family: var(--font-body);
	font-size: 0.875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	color: var(--color-ink);
	margin: 0;
}

.sidebar-widget__chevron {
	flex-shrink: 0;
	color: var(--color-muted);
	transition: transform 0.2s;
}

.sidebar-widget__toggle[aria-expanded="false"] .sidebar-widget__chevron {
	transform: rotate(-90deg);
}

.sidebar-widget__body {
	padding-bottom: 16px;
}

.sidebar-widget__toggle[aria-expanded="false"] + .sidebar-widget__body {
	display: none;
}

/* ---- Filtre active ---- */
.sidebar-widget--active { border-bottom: 1px solid var(--color-border); }

.sidebar-widget--active .sidebar-widget__header {
	cursor: default;
}

.sidebar-clear-all {
	font-size: 0.8125rem;
	color: var(--color-accent);
	text-decoration: underline;
	white-space: nowrap;
}

.sidebar-active-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	padding-bottom: 16px;
}

.active-tag {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 10px;
	background: var(--color-bg-soft);
	border: 1px solid var(--color-border);
	font-size: 0.8125rem;
	color: var(--color-ink);
	text-decoration: none;
	transition: background .15s;
}

.active-tag:hover { background: #eee; }
.active-tag span { font-size: 10px; color: var(--color-muted); }

/* ---- Categorii ---- */
.sidebar-cats {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0;
}

.sidebar-cats__row {
	display: flex;
	align-items: center;
	gap: 4px;
}

.sidebar-cats__row .sidebar-cats__link {
	flex: 1;
}

.sidebar-cats__toggle {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border: none;
	background: transparent;
	cursor: pointer;
	color: var(--color-muted);
	border-radius: 4px;
	transition: color var(--dur) var(--ease), transform var(--dur) var(--ease);
	padding: 0;
}

.sidebar-cats__toggle:hover {
	color: var(--color-accent);
}

.sidebar-cats__item.is-open > .sidebar-cats__row .sidebar-cats__toggle {
	transform: rotate(180deg);
	color: var(--color-accent);
}

.sidebar-cats__link {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 7px 0;
	font-size: 0.9rem;
	color: var(--color-ink);
	text-decoration: none;
	transition: color .15s;
}

.sidebar-cats__link:hover,
.sidebar-cats__link.is-active {
	color: var(--color-accent);
}

.sidebar-cats__link.is-active {
	font-weight: 600;
}

.sidebar-cats__count {
	font-size: 0.8rem;
	color: var(--color-muted);
}

.sidebar-cats__sub {
	list-style: none;
	margin: 0 0 4px 16px;
	padding: 0;
	display: none;
}

.sidebar-cats__item.is-open > .sidebar-cats__sub {
	display: block;
}

.sidebar-cats__sub .sidebar-cats__link {
	font-size: 0.875rem;
	padding: 5px 0;
}

/* ---- Price slider ---- */
.sidebar-widget--price .sidebar-widget__body {
	padding-bottom: 24px;
}

.price-filter-form { padding: 8px 0; }

.price-range-slider {
	position: relative;
	height: 30px;
	margin-bottom: 12px;
}

.price-range-track {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	height: 4px;
	background: var(--color-border);
	border-radius: 2px;
}

.price-range-fill {
	position: absolute;
	height: 100%;
	background: var(--color-accent);
	border-radius: 2px;
}

.price-range-input {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	height: 4px;
	appearance: none;
	background: transparent;
	pointer-events: none;
	margin: 0;
}

.price-range-input::-webkit-slider-thumb {
	appearance: none;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #fff;
	border: 2px solid var(--color-accent);
	cursor: pointer;
	pointer-events: all;
	box-shadow: 0 1px 4px rgba(0,0,0,.15);
}

.price-range-input::-moz-range-thumb {
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #fff;
	border: 2px solid var(--color-accent);
	cursor: pointer;
	pointer-events: all;
}

.price-range-labels {
	display: flex;
	justify-content: space-between;
	font-size: 0.875rem;
	color: var(--color-ink);
	margin-bottom: 12px;
}

.price-filter-btn {
	display: block;
	width: 100%;
	padding: 9px 16px;
	background: var(--color-ink);
	color: #fff;
	font-size: 0.875rem;
	font-weight: 600;
	text-align: center;
	cursor: pointer;
	border: 1px solid var(--color-ink);
	border-radius: var(--radius-pill);
	transition: background .15s, color .15s;
}

.price-filter-btn:hover {
	background: transparent;
	color: var(--color-ink);
}

/* ---- Atribute checkboxes ---- */
.sidebar-attr-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.sidebar-attr-check {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 5px 0;
	font-size: 0.9rem;
	color: var(--color-ink);
	text-decoration: none;
	transition: color .15s;
}

.sidebar-attr-check:hover { color: var(--color-accent); }

.sidebar-attr-check__box {
	flex-shrink: 0;
	width: 16px;
	height: 16px;
	border: 1.5px solid var(--color-border);
	display: inline-block;
	background: #fff;
	transition: background .15s, border-color .15s;
}

.sidebar-attr-check.is-checked .sidebar-attr-check__box {
	background: var(--color-accent);
	border-color: var(--color-accent);
	background-image: 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='%23fff' stroke-width='3'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
}

.sidebar-attr-check.is-checked { color: var(--color-accent); font-weight: 500; }

.sidebar-attr-check__count {
	font-size: 0.8rem;
	color: var(--color-muted);
	margin-left: auto;
}

.sidebar-show-more {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-top: 6px;
	padding: 0;
	background: none;
	border: none;
	cursor: pointer;
	font-family: var(--font-body);
	font-size: 0.8125rem;
	font-weight: 600;
	color: var(--color-accent);
	transition: color var(--dur) var(--ease);
}
.sidebar-show-more:hover { color: var(--color-accent-soft); }

/* ---- Responsive ---- */
@media (max-width: 1024px) {
	.shop-layout { grid-template-columns: 1fr 240px; gap: 28px; }
}

@media (max-width: 860px) {
	.shop-layout {
		grid-template-columns: 1fr;
		padding-block: 20px 36px;
	}

	.shop-sidebar {
		position: static;
		order: -1;
	}

	.shop-main {
		order: 0;
	}

	.shop-sidebar__mobile-toggle {
		display: inline-flex;
		padding: 8px 12px;
		font-size: 0.8125rem;
		margin-bottom: 8px;
		min-height: 36px;
	}

	.shop-sidebar__inner {
		display: none;
	}

	.shop-sidebar__inner.is-open {
		display: block;
		padding: 6px 16px 12px;
		border: 1px solid var(--color-border);
		border-radius: 14px;
		background: #fff;
	}

	.sidebar-widget__header {
		padding: 8px 0;
	}

	.sidebar-widget__title {
		font-size: 0.8125rem;
	}

	.sidebar-widget__body {
		padding-bottom: 8px;
	}

	.sidebar-active-tags {
		padding-bottom: 8px;
		gap: 4px;
	}

	.sidebar-cats {
		margin: 0 0 6px;
	}

	.sidebar-cats__link {
		padding: 4px 0;
		font-size: 0.8125rem;
	}

	.sidebar-cats__sub .sidebar-cats__link {
		padding: 3px 0;
		font-size: 0.8125rem;
	}

	.price-filter-form {
		padding: 2px 0 0;
	}

	.price-range-slider {
		height: 24px;
		margin-bottom: 6px;
	}

	.price-range-labels {
		margin-bottom: 8px;
		font-size: 0.8125rem;
	}

	.price-filter-btn {
		padding: 7px 12px;
		font-size: 0.8125rem;
	}

	.sidebar-attr-check {
		padding: 3px 0;
		font-size: 0.8125rem;
	}

	.shop-toolbar {
		flex-direction: column;
		align-items: stretch;
		gap: 8px;
		margin-bottom: 14px;
		padding-bottom: 0;
		border-bottom: none;
	}

	.shop-toolbar__left {
		font-size: 0.75rem;
		line-height: 1.3;
	}

	.shop-toolbar__right {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 6px;
		width: 100%;
	}

	.shop-view-modes {
		flex: 0 0 auto;
	}

	.shop-per-page,
	.shop-toolbar .woocommerce-ordering {
		flex: 1 1 0;
		min-width: 0;
	}

	.shop-per-page__select,
	.shop-toolbar .woocommerce-ordering select {
		width: 100%;
		height: 32px;
		min-height: 32px;
		padding: 0 26px 0 8px;
		line-height: 30px;
		font-size: 0.75rem;
		background-position: right 8px center;
	}

	.products-grid.view-grid-2 { grid-template-columns: repeat(2, 1fr); }
	.products-grid.view-grid-1 { grid-template-columns: 1fr; }

	.products-grid.view-grid-4,
	.products-grid.view-grid-3 { grid-template-columns: repeat(2, 1fr); }
}

/* ---- Product card premium ---- */
.product-card-wrap { list-style: none; }

.product-card {
	position: relative;
	display: flex;
	flex-direction: column;
	height: 100%;
	background: #fff;
	transition: box-shadow .2s;
}

.product-card:hover { box-shadow: 0 4px 24px rgba(0,0,0,.08); }

/* Media */
.product-card__media {
	position: relative;
	overflow: hidden;
	background: var(--color-bg-soft);
	aspect-ratio: 1 / 1;
}

.product-card__img-link { display: block; width: 100%; height: 100%; }

.product-card__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .4s var(--ease);
}

.product-card:hover .product-card__img { transform: scale(1.04); }

/* Badges */
.product-card__badges {
	position: absolute;
	top: 10px;
	left: 10px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	z-index: 2;
}

.pc-badge {
	display: inline-flex;
	align-items: center;
	padding: 3px 8px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
	border-radius: var(--radius-pill);
}

.pc-badge--sale { background: #2E7D32; color: #fff; }
.pc-badge--new  { background: var(--color-ink);    color: #fff; }
.pc-badge--delivery { background: var(--color-ink); color: #fff; }
.product-card__oos-overlay {
	position: absolute;
	inset: 0;
	background: rgba(247, 244, 239, 0.72);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 3;
	backdrop-filter: grayscale(0.4);
}

.product-card__oos-overlay span {
	padding: 5px 14px;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-pill);
	background: #fff;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase;
	color: var(--color-muted);
}

/* Actiuni hover (wishlist, compare, quickview) */
.product-card__actions {
	position: absolute;
	top: 10px;
	right: 10px;
	display: flex;
	flex-direction: column;
	gap: 6px;
	z-index: 3;
	opacity: 0;
	transform: translateX(8px);
	transition: opacity .2s, transform .2s;
}

.product-card:hover .product-card__actions,
.product-card:focus-within .product-card__actions {
	opacity: 1;
	transform: translateX(0);
}

.pc-action {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	background: #fff;
	border: none;
	color: var(--color-ink);
	cursor: pointer;
	transition: background .15s, color .15s;
}

.pc-action svg {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
}

.pc-action:hover {
	background: var(--color-accent);
	color: #fff;
}

.pc-action--wish.is-active {
	background: #fff0f0;
	color: #e03;
}

.pc-action--compare.is-active {
	background: var(--color-bg-soft);
	color: var(--color-accent);
}

@media (max-width: 860px) {
	.product-card__actions {
		top: 8px;
		right: 8px;
		gap: 4px;
		opacity: 1;
		transform: none;
	}

	.pc-action {
		width: 28px;
		height: 28px;
	}

	.pc-action svg {
		width: 14px;
		height: 14px;
	}
}

/* Body */
.product-card__body {
	display: flex;
	flex-direction: column;
	flex: 1;
	padding: 14px 16px 16px;
	gap: 6px;
}

.product-card__cat {
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--color-muted);
	text-decoration: none;
}

.product-card__cat:hover { color: var(--color-accent); }

.product-card__title {
	font-family: var(--font-heading);
	font-size: 0.9375rem;
	line-height: 1.35;
	margin: 0;
}

.product-card__title a { color: var(--color-ink); text-decoration: none; transition: color .15s; }
.product-card__title a:hover { color: var(--color-accent); }

.product-card__rating,
.product-card__rating-count { display: none; }

.product-card__footer {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-top: auto;
	padding-top: 10px;
}

.product-card__price {
	font-weight: 700;
	font-size: 1.0625rem;
	color: var(--color-ink);
}

.product-card__price del { font-weight: 400; color: var(--color-muted); font-size: .875rem; margin-right: 4px; }
.product-card__price ins { text-decoration: none; color: var(--color-accent); }

.pc-cart-btn,
.product-card .button {
	display: block;
	width: 100%;
	text-align: center;
	padding: 10px 14px;
	font-size: 0.8125rem;
	font-weight: 600;
	white-space: nowrap !important;
}

@media (max-width: 860px) {
	.product-card__cart,
	.pc-cart-btn,
	.product-card a.button {
		padding: 8px 6px !important;
		font-size: 0.6875rem !important;
		letter-spacing: 0.02em !important;
	}
}

/* Products grid views — desktop */
.products-grid.view-grid-4 { grid-template-columns: repeat(4, 1fr); }
.products-grid.view-grid-3 { grid-template-columns: repeat(3, 1fr); }
.products-grid.view-list   { grid-template-columns: 1fr; }

.products-grid.view-list .product-card {
	flex-direction: row;
}

.products-grid.view-list .product-card__media {
	flex: 0 0 200px;
	aspect-ratio: unset;
	height: 200px;
}

.products-grid.view-list .product-card__cart,
.products-grid.view-list .product-card .button {
	width: auto;
	align-self: flex-start;
}

.products-grid.view-list .product-card__body {
	justify-content: center;
}

@media (max-width: 1024px) {
	.products-grid.view-grid-4 { grid-template-columns: repeat(3, 1fr); }
}

/* Toolbar view mode buttons */
.shop-view-modes {
	display: flex;
	gap: 4px;
}

.shop-view-modes--mobile {
	display: none;
}

.js-view-mode {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	padding: 0;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-pill);
	background: #fff;
	color: var(--color-muted);
	cursor: pointer;
	line-height: 0;
	transition: background .15s, color .15s;
}

.js-view-mode.is-active,
.js-view-mode:hover {
	background: var(--color-ink);
	color: #fff;
	border-color: var(--color-ink);
}

@media (max-width: 860px) {
	.shop-view-modes--desktop {
		display: none;
	}

	.shop-view-modes--mobile {
		display: flex;
	}

	.shop-view-modes .js-view-mode {
		width: 28px;
		height: 28px;
	}
}

/* ---- Quick View Modal ---- */
.qv-modal {
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
}

.qv-modal[hidden] { display: none; }

body.qv-open { overflow: hidden; }

.qv-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,.55);
	backdrop-filter: blur(2px);
}

.qv-modal__dialog {
	position: relative;
	background: #fff;
	width: 100%;
	max-width: 1140px;
	min-height: 520px;
	max-height: 92vh;
	overflow-y: auto;
	z-index: 1;
}

.qv-modal__close {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 2;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--color-bg-soft);
	border: 1px solid var(--color-border);
	cursor: pointer;
	color: var(--color-ink);
	transition: background .15s;
}

.qv-modal__close:hover { background: var(--color-ink); color: #fff; }

/* Quick view content */
.qv-inner {
	display: grid;
	grid-template-columns: 1.15fr 0.85fr;
	gap: 0;
	min-height: 520px;
}

.qv-gallery {
	background: var(--color-bg-soft);
	display: flex;
	flex-direction: column;
}

.qv-gallery__main {
	flex: 1;
	min-height: 420px;
	overflow: hidden;
}

.qv-gallery__main-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .3s;
}

.qv-gallery__thumbs {
	display: flex;
	gap: 6px;
	padding: 10px;
	overflow-x: auto;
}

.qv-gallery__thumb {
	flex-shrink: 0;
	width: 60px;
	height: 60px;
	overflow: hidden;
	border: 2px solid transparent;
	cursor: pointer;
	background: none;
	padding: 0;
	transition: border-color .15s;
}

.qv-gallery__thumb.is-active { border-color: var(--color-accent); }
.qv-gallery__thumb img { width: 100%; height: 100%; object-fit: cover; }

.qv-info {
	padding: 40px 44px;
	display: flex;
	flex-direction: column;
	gap: 14px;
	justify-content: center;
}

.qv-cat {
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--color-muted);
	text-decoration: none;
}

.qv-title {
	font-family: var(--font-heading);
	font-size: clamp(1.2rem, 2vw, 1.6rem);
	line-height: 1.25;
	color: var(--color-ink);
	margin: 0;
}

.qv-rating { display: flex; align-items: center; gap: 6px; }
.qv-rating-count { font-size: .8125rem; color: var(--color-muted); }

.qv-price {
	font-size: 1.375rem;
	font-weight: 700;
	color: var(--color-ink);
}

.qv-price del { font-weight: 400; color: var(--color-muted); font-size: 1rem; }
.qv-price ins { text-decoration: none; color: var(--color-accent); }

.qv-desc { font-size: .9375rem; color: var(--color-muted); line-height: 1.6; }

.qv-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	font-size: .8125rem;
}

.qv-meta__item { color: var(--color-muted); }

.qv-stock-badge {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 5px 12px;
	border-radius: var(--radius-pill);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.02em;
}

.qv-stock-badge__dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	flex-shrink: 0;
}

.qv-stock-badge--in {
	background: rgba(46, 125, 50, 0.1);
	color: #2e7d32;
}

.qv-stock-badge--in .qv-stock-badge__dot {
	background: #2e7d32;
}

.qv-stock-badge--out {
	background: rgba(51, 47, 44, 0.06);
	color: var(--color-muted);
}

.qv-stock-badge--out .qv-stock-badge__dot {
	background: var(--color-muted);
}

.qv-outofstock {
	margin-top: 16px;
	padding: 18px 20px;
	border-radius: var(--radius);
	background: var(--color-bg-soft);
	border: 1px solid rgba(51, 47, 44, 0.08);
}

.qv-outofstock__title {
	margin: 0 0 6px;
	font-family: var(--font-heading);
	font-size: 1rem;
	font-weight: 400;
	color: var(--color-ink);
}

.qv-outofstock__desc {
	margin: 0;
	font-size: 0.875rem;
	line-height: 1.55;
	color: var(--color-muted);
}

/* Add to cart în Quick View — suprascrie stilurile WooCommerce */
.qv-modal .qv-cart {
	margin-top: 12px;
}

.qv-modal .qv-cart .cart,
.qv-modal .qv-cart form.cart {
	display: flex;
	align-items: stretch;
	gap: 12px;
	margin: 0;
	flex-wrap: nowrap;
}

.qv-modal .qv-cart .quantity {
	display: flex;
	align-items: stretch;
	flex-shrink: 0;
	margin: 0;
}

.qv-modal .qv-cart .button,
.qv-modal .qv-cart .button.alt,
.qv-modal .qv-cart .single_add_to_cart_button,
.qv-modal .qv-cart button[type="submit"] {
	flex: 1;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	height: 52px !important;
	min-height: 52px;
	padding: 0 28px !important;
	font-family: var(--font-body) !important;
	font-size: 0.875rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.3px;
	text-transform: uppercase;
	color: #fff !important;
	background: var(--color-accent) !important;
	border: 1px solid var(--color-accent) !important;
	border-radius: var(--radius-pill) !important;
	box-shadow: none !important;
	cursor: pointer;
	transition: background var(--dur) var(--ease), color var(--dur) var(--ease);
}

.qv-modal .qv-cart .button:hover,
.qv-modal .qv-cart .button.alt:hover,
.qv-modal .qv-cart .single_add_to_cart_button:hover,
.qv-modal .qv-cart button[type="submit"]:hover {
	background: transparent !important;
	color: var(--color-accent) !important;
}

.qv-cart .variations,
.qv-cart .woocommerce-variation-add-to-cart {
	width: 100%;
}

.qv-cart .variations {
	margin-bottom: 12px;
}

.qv-cart .variations select {
	width: 100%;
	height: 44px;
	padding: 0 14px;
	border: 1.5px solid var(--color-border);
	font-size: 0.9375rem;
	color: var(--color-ink);
	background: #fff;
}

.qv-full-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid rgba(51, 47, 44, 0.08);
	width: 100%;
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--color-ink);
	text-decoration: none;
	transition: color var(--dur) var(--ease), gap var(--dur) var(--ease);
}

.qv-full-link:hover {
	color: var(--color-accent);
	gap: 12px;
}

.qv-full-link svg {
	flex-shrink: 0;
	transition: transform var(--dur) var(--ease);
}

.qv-full-link:hover svg {
	transform: translateX(3px);
}

/* Loading spinner */
.qv-loading {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 300px;
}

.qv-spinner {
	animation: qv-spin 1s linear infinite;
}

@keyframes qv-spin {
	to { transform: rotate(360deg); }
}

@media (max-width: 900px) {
	.qv-modal__dialog { max-width: 96vw; min-height: auto; }
	.qv-inner { grid-template-columns: 1fr; min-height: auto; }
	.qv-gallery__main { min-height: 280px; }
	.qv-info { padding: 24px 20px; }
}

@media (max-width: 480px) {
	.qv-modal .qv-cart .cart,
	.qv-modal .qv-cart form.cart { flex-direction: column; }
	.qv-modal .qv-cart .qty-stepper { width: 100%; }
	.qv-modal .qv-cart .qty-stepper .qty { flex: 1; width: auto !important; }
}

/* ---- Compare Bar ---- */
.compare-bar {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 9000;
	background: var(--color-ink);
	color: #fff;
	padding: 12px 0;
	box-shadow: 0 -4px 24px rgba(0,0,0,.18);
	animation: slideUp .25s var(--ease);
}

.compare-bar[hidden] { display: none; }

@keyframes slideUp {
	from { transform: translateY(100%); }
	to   { transform: translateY(0); }
}

.compare-bar__inner {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 24px;
	display: flex;
	align-items: center;
	gap: 20px;
}

.compare-bar__products {
	display: flex;
	gap: 12px;
	flex: 1;
	overflow-x: auto;
}

.compare-bar__item {
	display: flex;
	align-items: center;
	gap: 8px;
	background: rgba(255,255,255,.1);
	padding: 6px 10px;
	flex-shrink: 0;
	max-width: 200px;
}

.compare-bar__item img {
	width: 40px;
	height: 40px;
	object-fit: cover;
	flex-shrink: 0;
}

.compare-bar__item-name {
	font-size: .8125rem;
	color: rgba(255,255,255,.9);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.compare-bar__item-remove {
	background: none;
	border: none;
	color: rgba(255,255,255,.6);
	cursor: pointer;
	flex-shrink: 0;
	padding: 2px;
	transition: color .15s;
}

.compare-bar__item-remove:hover { color: #fff; }

.compare-bar__actions { display: flex; gap: 10px; flex-shrink: 0; align-items: stretch; }

.compare-bar__btn,
.compare-bar__clear {
	display: flex;
	align-items: center;
	justify-content: center;
}

.compare-bar__btn {
	background: var(--color-accent);
	color: #fff;
	border: 1px solid transparent;
	padding: 10px 24px;
	font-size: .875rem;
	font-weight: 700;
	font-family: var(--font-body);
	letter-spacing: .03em;
	border-radius: var(--radius-pill);
	cursor: pointer;
	transition: background .15s, border-color .15s;
}

.compare-bar__btn:hover { background: #c99540; }

.compare-bar__clear {
	background: none;
	border: 1px solid rgba(255,255,255,.35);
	color: rgba(255,255,255,.85);
	padding: 10px 20px;
	font-size: .875rem;
	font-family: var(--font-body);
	border-radius: var(--radius-pill);
	cursor: pointer;
	transition: border-color .15s, color .15s;
}

.compare-bar__clear:hover { border-color: #fff; color: #fff; }

@media (max-width: 600px) {
	.compare-bar__inner {
		flex-wrap: wrap;
		gap: 10px;
		padding: 10px 16px;
	}
	.compare-bar__products { gap: 8px; }
	.compare-bar__actions {
		width: 100%;
		gap: 8px;
	}
	.compare-bar__btn,
	.compare-bar__clear {
		flex: 1;
		text-align: center;
		padding: 9px 12px;
		font-size: .8125rem;
	}
}

/* ---- FAVORITE ---- */
.wishlist-page {
	padding-block: clamp(32px, 4vw, 56px);
}

.wishlist-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px 24px;
	flex-wrap: wrap;
	margin-bottom: 24px;
}

.wishlist-toolbar[hidden] {
	display: none !important;
}

.wishlist-toolbar__search {
	flex: 1 1 240px;
	max-width: 360px;
}

.wishlist-search__input {
	width: 100%;
	padding: 11px 16px 11px 40px;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-pill, 999px);
	font-size: 0.875rem;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E") 14px center no-repeat;
	transition: border-color var(--dur) var(--ease);
}

.wishlist-search__input:focus {
	outline: none;
	border-color: var(--color-accent);
}

.wishlist-toolbar__meta {
	display: flex;
	align-items: center;
	gap: 14px;
	flex-shrink: 0;
}

.wishlist-toolbar__info {
	margin: 0;
	font-size: 0.8125rem;
	color: var(--color-muted);
	white-space: nowrap;
}

.wishlist-per-page__select {
	height: 42px;
	padding: 0 36px 0 12px;
	border: 1px solid var(--color-border);
	border-radius: 8px;
	font-size: 0.875rem;
	font-family: var(--font-body);
	background: #fff 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='%23332F2C' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") right 12px center no-repeat;
	color: var(--color-ink);
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
	transition: border-color var(--dur) var(--ease);
}

.wishlist-per-page__select:focus {
	outline: none;
}

.wishlist-no-results {
	text-align: center;
	padding: 40px 20px;
	color: var(--color-muted);
}

.wishlist-no-results[hidden] {
	display: none !important;
}

.wishlist-pagination {
	margin-top: 40px;
	padding-bottom: 8px;
}

.wishlist-pagination[hidden] {
	display: none !important;
}

.wishlist-pagination__list {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	list-style: none;
	margin: 0;
	padding: 0;
	flex-wrap: wrap;
}

.wishlist-pagination__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	height: 40px;
	padding: 0 14px;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-pill);
	background: #fff;
	color: var(--color-ink);
	font-size: var(--fs-small);
	font-weight: 500;
	cursor: pointer;
	transition: border-color var(--dur) var(--ease), color var(--dur) var(--ease), background var(--dur) var(--ease);
	white-space: nowrap;
}

.wishlist-pagination__btn:hover {
	border-color: var(--color-accent);
	color: var(--color-accent);
}

.wishlist-pagination__btn.is-current {
	background: var(--color-accent);
	border-color: var(--color-accent);
	color: #fff;
}

.wishlist-pagination__dots {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 32px;
	height: 40px;
	color: var(--color-muted);
	font-size: var(--fs-small);
}

@media (max-width: 600px) {
	.wishlist-toolbar {
		flex-direction: column;
		align-items: stretch;
	}

	.wishlist-toolbar__search {
		flex: 0 0 auto;
		max-width: none;
	}

	.wishlist-toolbar__meta {
		justify-content: space-between;
	}

	/* Pe mobile butoanele de paginare au tap target mai mare */
	.wishlist-pagination__btn {
		min-width: 44px;
		height: 44px;
	}

	.wishlist-pagination__list {
		gap: 4px;
	}
}

.wishlist-loading {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	padding: 48px 0;
	color: var(--color-muted);
}

.wishlist-loading[hidden],
.wishlist-empty[hidden],
.wishlist-grid-wrap[hidden] {
	display: none !important;
}

.wishlist-spinner {
	animation: wishlist-spin 1s linear infinite;
}

@keyframes wishlist-spin {
	to { transform: rotate(360deg); }
}

.wishlist-empty {
	text-align: center;
	padding: clamp(40px, 6vw, 72px) 24px;
	max-width: 480px;
	margin-inline: auto;
}

.wishlist-empty__icon {
	color: var(--color-accent);
	margin-bottom: 20px;
	opacity: .7;
}

.wishlist-empty__title {
	font-family: var(--font-heading);
	font-size: clamp(1.25rem, 2.5vw, 1.5rem);
	margin: 0 0 12px;
	color: var(--color-ink);
}

.wishlist-empty__desc {
	color: var(--color-muted);
	margin: 0 0 28px;
	line-height: 1.6;
}

/* Lista produse favorite */
.wishlist-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0;
}

.wishlist-item {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 20px 0;
	border-bottom: 1px solid rgba(51, 47, 44, 0.08);
}

.wishlist-item:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.wishlist-item:first-child {
	padding-top: 0;
}

.wishlist-item__content {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
}

.wishlist-item__title {
	font-family: var(--font-body);
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.35;
	margin: 0;
}

.wishlist-item__title a {
	color: var(--color-ink);
	text-decoration: none;
	transition: color var(--dur) var(--ease);
}

.wishlist-item__title a:hover {
	color: var(--color-accent);
}

.wishlist-item__price {
	font-size: 1.0625rem;
	font-weight: 700;
	color: var(--color-ink);
}

.wishlist-item__price del {
	font-weight: 400;
	color: var(--color-muted);
	font-size: 0.875rem;
	margin-right: 6px;
}

.wishlist-item__price ins {
	text-decoration: none;
	color: var(--color-accent);
}

.wishlist-item__actions {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 8px;
	flex-wrap: wrap;
}

.wishlist-item__cart.btn {
	padding: 10px 22px;
	font-size: 0.8125rem;
	font-weight: 600;
	white-space: nowrap;
}

.wishlist-item__remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border: none;
	border-radius: var(--radius, 10px);
	background: transparent;
	color: var(--color-muted);
	cursor: pointer;
	transition: color var(--dur) var(--ease), background var(--dur) var(--ease);
}

.wishlist-item__remove:hover {
	color: #d63638;
	background: rgba(214, 54, 56, 0.06);
}

.wishlist-item__media {
	flex: 0 0 96px;
	width: 96px;
	height: 96px;
	border-radius: var(--radius, 10px);
	overflow: hidden;
	background: var(--color-bg-soft, #f7f4ef);
}

.wishlist-item__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

@media (max-width: 600px) {
	.wishlist-item {
		padding: 16px;
		gap: 12px;
	}

	.wishlist-item__media {
		flex: 0 0 72px;
		width: 72px;
		height: 72px;
	}

	.wishlist-item__title {
		font-size: 0.9375rem;
	}

	.wishlist-item__actions {
		gap: 8px;
	}

	.wishlist-item__cart.btn {
		padding: 9px 16px;
		font-size: 0.75rem;
	}

	.wishlist-item__remove {
		width: 38px;
		height: 38px;
	}
}

.wishlist-toast {
	position: fixed;
	bottom: 24px;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: max-content;
	max-width: calc(100% - 40px);
	transform: translateY(10px);
	z-index: 9999;
	background: #fff;
	color: var(--color-ink);
	border: 1px solid var(--color-border);
	padding: 12px 20px;
	border-radius: var(--radius-pill);
	font-size: .875rem;
	box-shadow: 0 4px 16px rgba(51, 47, 44, .10);
	opacity: 0;
	visibility: hidden;
	transition: opacity .25s var(--ease), transform .25s var(--ease), visibility .25s var(--ease);
	pointer-events: none;
	white-space: nowrap;
}

.wishlist-toast.is-visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	pointer-events: auto;
}

.wishlist-toast a {
	color: var(--color-accent);
	margin-left: 10px;
	font-weight: 600;
	text-decoration: none;
	transition: color var(--dur) var(--ease);
}

.wishlist-toast a:hover {
	color: var(--color-ink);
}

/* ---- COMPARĂ ---- */
.compare-page {
	padding-block: clamp(32px, 4vw, 56px);
}

.compare-loading {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	padding: 48px 0;
	color: var(--color-muted);
}

.compare-loading[hidden],
.compare-empty[hidden],
.compare-table-host[hidden] {
	display: none !important;
}

.compare-spinner {
	animation: wishlist-spin 1s linear infinite;
}

.compare-empty {
	text-align: center;
	padding: clamp(40px, 6vw, 72px) 24px;
	max-width: 520px;
	margin-inline: auto;
}

.compare-empty__icon {
	color: var(--color-accent);
	margin-bottom: 20px;
	opacity: .7;
}

.compare-empty__title {
	font-family: var(--font-heading);
	font-size: clamp(1.25rem, 2.5vw, 1.5rem);
	margin: 0 0 12px;
	color: var(--color-ink);
}

.compare-empty__desc {
	color: var(--color-muted);
	margin: 0 0 28px;
	line-height: 1.6;
}

.compare-table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.compare-table {
	width: 100%;
	min-width: 640px;
	border-collapse: collapse;
	background: #fff;
}

.compare-table th,
.compare-table td {
	padding: 14px 16px;
	text-align: center;
	vertical-align: middle;
	border-bottom: 1px solid rgba(51, 47, 44, 0.08);
	font-size: 0.875rem;
}

.compare-table__label-col,
.compare-table tbody th[scope="row"] {
	text-align: left;
	font-weight: 600;
	color: var(--color-ink);
	width: 140px;
	background: var(--color-bg-soft, #f7f4ef);
}

.compare-table__product-col {
	min-width: 180px;
	position: relative;
	vertical-align: top;
	padding-top: 36px;
}

.compare-table__remove {
	position: absolute;
	top: 10px;
	right: 10px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border: none;
	border-radius: 50%;
	background: rgba(51, 47, 44, 0.06);
	color: var(--color-muted);
	cursor: pointer;
	transition: background var(--dur) var(--ease), color var(--dur) var(--ease);
}

.compare-table__remove:hover {
	background: rgba(214, 54, 56, 0.1);
	color: #d63638;
}

.compare-table__thumb {
	display: block;
	margin: 0 auto 10px;
	width: 120px;
	height: 120px;
	border-radius: var(--radius, 10px);
	overflow: hidden;
	background: var(--color-bg-soft, #f7f4ef);
}

.compare-table__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.compare-table__name {
	display: block;
	font-weight: 600;
	color: var(--color-ink);
	text-decoration: none;
	line-height: 1.35;
	transition: color var(--dur) var(--ease);
}

.compare-table__name:hover {
	color: var(--color-accent);
}

.compare-table td del {
	color: var(--color-muted);
	font-size: 0.8125rem;
	margin-right: 4px;
}

.compare-table td ins {
	text-decoration: none;
	color: var(--color-accent);
	font-weight: 700;
}

.compare-table__stock--in { color: #2e7d32; }
.compare-table__stock--out { color: var(--color-muted); }

.compare-table__rating {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
}

.compare-table__rating .star-rating {
	margin: 0 auto;
}

.compare-table__rating-count {
	font-size: 0.75rem;
	color: var(--color-muted);
}

.compare-table__text {
	margin: 0;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: var(--color-muted);
	text-align: left;
	max-width: 280px;
	margin-inline: auto;
}

.compare-table td .compare-table__text {
	text-align: left;
}

.compare-table__link {
	display: inline-block;
	margin-top: 8px;
	font-size: 0.75rem;
	color: var(--color-accent);
	text-decoration: none;
	font-weight: 600;
	transition: color var(--dur) var(--ease);
}

.compare-table__link:hover {
	color: var(--color-ink);
}

.compare-table tbody th[scope="row"] {
	vertical-align: top;
	padding-top: 18px;
}

.compare-table td {
	vertical-align: top;
}

.compare-table__cart.btn {
	padding: 9px 18px;
	font-size: 0.75rem;
	white-space: nowrap;
}

.compare-toast {
	position: fixed;
	bottom: 24px;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: max-content;
	max-width: calc(100% - 40px);
	transform: translateY(10px);
	z-index: 9999;
	background: #fff;
	color: var(--color-ink);
	border: 1px solid var(--color-border);
	padding: 12px 20px;
	border-radius: var(--radius-pill);
	font-size: .875rem;
	box-shadow: 0 4px 16px rgba(51, 47, 44, .10);
	opacity: 0;
	visibility: hidden;
	transition: opacity .25s var(--ease), transform .25s var(--ease), visibility .25s var(--ease);
	pointer-events: none;
	white-space: nowrap;
}

.compare-toast.is-visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	pointer-events: auto;
}

.compare-toast a {
	color: var(--color-accent);
	margin-left: 10px;
	font-weight: 600;
	text-decoration: none;
	transition: color var(--dur) var(--ease);
}

.compare-toast a:hover {
	color: var(--color-ink);
}

body:has(.compare-bar:not([hidden])) .compare-toast.is-visible,
body:has(.compare-bar:not([hidden])) .wishlist-toast.is-visible {
	bottom: 88px;
}

@media (max-width: 600px) {
	body:has(.compare-bar:not([hidden])) .compare-toast.is-visible,
	body:has(.compare-bar:not([hidden])) .wishlist-toast.is-visible {
		bottom: 160px;
	}
}

@media (max-width: 768px) {
	.compare-table__label-col,
	.compare-table tbody th[scope="row"] {
		width: 110px;
		font-size: 0.8125rem;
	}
}

/* =============================================================
   PAGINI CONT — login, register, lost password, reset, my-account
   ============================================================= */

/* ---- Inputuri WooCommerce în formularele de cont ---- */
.auth-form input[type="text"],
.auth-form input[type="email"],
.auth-form input[type="password"],
.auth-form input[type="tel"],
.woocommerce-EditAccountForm input[type="text"],
.woocommerce-EditAccountForm input[type="email"],
.woocommerce-EditAccountForm input[type="password"],
.woocommerce-EditAccountForm input[type="tel"],
.woocommerce-address-fields input[type="text"],
.woocommerce-address-fields input[type="email"],
.woocommerce-address-fields input[type="tel"],
.woocommerce-address-fields input[type="password"],
.woocommerce-address-fields select,
.auth-form .woocommerce-Input,
.woocommerce-EditAccountForm .woocommerce-Input,
.woocommerce-address-fields .woocommerce-Input,
.login-form input.input-text,
.register-form input.input-text {
	width: 100%;
	padding: 12px 20px;
	border: 1.5px solid var(--color-border);
	border-radius: var(--radius-pill);
	font-size: 0.9375rem;
	font-family: var(--font-body);
	color: var(--color-ink);
	background: var(--color-bg);
	outline: none;
	transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
	box-shadow: none;
	appearance: none;
	-webkit-appearance: none;
}

.auth-form input:focus,
.auth-form .woocommerce-Input:focus,
.woocommerce-EditAccountForm input:focus,
.woocommerce-address-fields input:focus,
.woocommerce-address-fields select:focus,
.login-form input.input-text:focus,
.register-form input.input-text:focus {
	border-color: var(--color-accent);
	box-shadow: 0 0 0 3px rgba(149, 120, 82, 0.08);
}

.auth-form label,
.woocommerce-EditAccountForm label,
.woocommerce-address-fields label,
.login-form .form-row > label,
.register-form .form-row > label {
	display: block;
	font-size: var(--fs-small);
	font-weight: 600;
	color: var(--color-ink);
	margin-bottom: 6px;
}

/* ---- Pagina auth-box (lost password, reset password) ---- */
.auth-page {
	padding-block: clamp(40px, 6vw, 80px);
}

.auth-box {
	max-width: 460px;
	margin: 0 auto;
	text-align: center;
}

.auth-box .auth-form {
	text-align: left;
}

.auth-box .auth-form .btn {
	width: 100%;
	justify-content: center;
	text-transform: none;
	letter-spacing: 0;
	font-size: 1rem;
}

.auth-box__icon {
	display: none !important;
}

.auth-box__title {
	font-family: var(--font-heading);
	font-size: clamp(1.4rem, 3vw, 1.8rem);
	font-weight: 400;
	color: var(--color-ink);
	margin: 0 0 10px;
}

.auth-box__sub {
	font-size: 0.9375rem;
	color: var(--color-muted);
	line-height: 1.6;
	margin: 0 0 28px;
}

.auth-box__back {
	margin-top: 20px;
	font-size: var(--fs-small);
}

.auth-box__back a {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: var(--color-muted);
	transition: color var(--dur) var(--ease);
}

.auth-box__back a:hover {
	color: var(--color-accent);
}

.auth-form {
	text-align: left;
}

.auth-form__row {
	margin-bottom: 16px;
}

.auth-form__row:last-child {
	margin-bottom: 0;
}

/* ---- Login / Register (form-login.php) ---- */

/* Wrapper — centrat sau split */
.myaccount-login-page {
	padding-block: clamp(24px, 4vw, 56px);
}

.auth-login-wrap {
	display: flex;
	gap: 0;
	align-items: flex-start;
	padding-block: clamp(48px, 8vw, 100px);
}

.auth-panel__icon {
	display: none !important;
}

.auth-login-wrap--center {
	justify-content: center;
}

.auth-login-wrap--center .auth-panel {
	width: 100%;
	max-width: 440px;
}

.auth-login-wrap--split {
	gap: 0;
}

.auth-login-wrap--split .auth-panel {
	flex: 1;
	padding: clamp(24px, 4vw, 48px);
}

.auth-login-wrap--split .auth-panel--register {
	border-left: 1px solid var(--color-border);
}

/* Capul panoului */
.auth-panel__head {
	margin-bottom: 32px;
}

.auth-panel__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	background: rgba(230, 175, 93, 0.10);
	color: var(--color-accent);
	border-radius: 14px;
	margin-bottom: 20px;
}

.auth-panel__title {
	font-family: var(--font-heading);
	font-size: clamp(1.4rem, 2.5vw, 1.75rem);
	font-weight: 400;
	color: var(--color-ink);
	margin: 0 0 8px;
}

.auth-panel__sub {
	font-size: 0.9375rem;
	color: var(--color-muted);
	margin: 0;
	line-height: 1.5;
}

/* Câmpuri formular */
.auth-form__row {
	margin-bottom: 16px;
}

.auth-form__row label {
	display: block;
	font-size: var(--fs-small);
	font-weight: 500;
	color: var(--color-ink);
	margin-bottom: 6px;
}

.auth-form__label-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 6px;
}

.auth-form__label-row label {
	margin-bottom: 0;
}

.auth-form__forgot {
	font-size: 0.8125rem;
	color: var(--color-muted);
	text-decoration: none;
	transition: color var(--dur) var(--ease);
}

.auth-form__forgot:hover {
	color: var(--color-accent);
}

.auth-input {
	display: block;
	width: 100%;
	padding: 11px 18px;
	border: 1.5px solid var(--color-border);
	border-radius: var(--radius-pill);
	font-size: 0.9375rem;
	font-family: var(--font-body);
	color: var(--color-ink);
	background: #fff;
	outline: none;
	transition: border-color var(--dur) var(--ease);
	box-sizing: border-box;
}

.auth-input:focus {
	border-color: var(--color-accent);
}

/* Remember me */
.auth-form__remember {
	margin-bottom: 20px;
}

.auth-form__remember label {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: var(--fs-small);
	color: var(--color-muted);
	cursor: pointer;
	font-weight: 400;
}

.auth-form__remember input[type="checkbox"] {
	width: 15px;
	height: 15px;
	accent-color: var(--color-accent);
	cursor: pointer;
	flex-shrink: 0;
}

/* Buton submit */
.auth-submit {
	width: 100%;
	justify-content: center;
	margin-top: 20px;
	text-transform: none;
	letter-spacing: 0;
	font-size: 1rem;
}

/* Link switch login↔register */
.auth-form__switch {
	margin-top: 16px;
	text-align: center;
	font-size: var(--fs-small);
	color: var(--color-muted);
}

.auth-form__switch a {
	color: var(--color-accent);
	font-weight: 600;
	text-decoration: none;
}

/* Beneficii înregistrare */
.auth-register__benefits {
	margin: 20px 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.auth-register__benefit {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: var(--fs-small);
	color: var(--color-muted);
	margin: 0;
}

.auth-register__benefit svg {
	flex-shrink: 0;
	color: var(--color-accent);
}

/* Buton outline */
.btn--outline {
	background: transparent;
	border: 1.5px solid var(--color-accent);
	color: var(--color-accent);
}

.btn--outline:hover {
	background: var(--color-accent);
	color: #fff;
}

@media (max-width: 720px) {
	.auth-login-wrap {
		padding-block: 0;
	}

	.auth-login-wrap--split {
		flex-direction: column;
		align-items: stretch;
	}

	.auth-login-wrap--split .auth-panel {
		padding-inline: 0;
		padding-block: 24px;
	}

	.auth-login-wrap--split .auth-panel--login {
		padding-top: 0;
	}

	.auth-login-wrap--split .auth-panel--register {
		border-left: none;
		border-top: 1px solid var(--color-border);
	}
}

/* ---- My Account nav cu iconițe ---- */
.myaccount-page {
	padding-block: clamp(24px, 4vw, 56px);
	overflow-x: clip;
}

.myaccount-layout {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
	align-items: start;
}

@media (min-width: 769px) {
	.myaccount-layout {
		grid-template-columns: 200px 1fr;
		gap: 24px;
	}
}

@media (min-width: 1025px) {
	.myaccount-layout {
		grid-template-columns: 260px 1fr;
		gap: 40px;
	}
}

.myaccount-nav {
	position: sticky;
	top: 100px;
	min-width: 0;
}

.myaccount-nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.myaccount-nav li a {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 14px;
	font-size: 0.9375rem;
	font-weight: 500;
	color: var(--color-muted);
	border-radius: 10px;
	transition: background var(--dur) var(--ease), color var(--dur) var(--ease);
	text-decoration: none;
}

.myaccount-nav li a svg {
	flex-shrink: 0;
	opacity: 0.6;
	transition: opacity var(--dur) var(--ease);
}

.myaccount-nav li a:hover,
.myaccount-nav li.is-active a,
.myaccount-nav li a[aria-current="page"] {
	background: var(--color-bg-soft);
	color: var(--color-accent);
}

.myaccount-nav li a:hover svg,
.myaccount-nav li.is-active a svg,
.myaccount-nav li a[aria-current="page"] svg {
	opacity: 1;
}

.myaccount-nav li:last-child a {
	color: #c0392b;
}

.myaccount-nav li:last-child a:hover {
	background: rgba(192, 57, 43, 0.07);
	color: #c0392b;
}

/* ---- Conținut cont ---- */
.myaccount-content {
	min-width: 0;
	width: 100%;
	max-width: 100%;
	overflow-x: hidden;
}

.woocommerce-EditAccountForm,
.woocommerce-address-fields,
.woocommerce-address-fields__field-wrapper,
.woocommerce-MyAccount-content {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.myaccount-layout > .myaccount-content:only-child {
	grid-column: 1 / -1;
}

.myaccount-content h2,
.myaccount-content h3 {
	font-family: var(--font-heading);
	font-size: 1.25rem;
	font-weight: 400;
	color: var(--color-ink);
	margin: 0 0 20px;
}

/* Tabel comenzi */
.myaccount-content .woocommerce-orders-table,
.myaccount-content table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.9375rem;
}

.myaccount-content table th,
.myaccount-content table td {
	padding: 12px 14px;
	text-align: left;
	border-bottom: 1px solid var(--color-border);
	font-size: var(--fs-small);
	vertical-align: middle;
}

.myaccount-content table th {
	font-weight: 600;
	color: var(--color-ink);
	background: var(--color-bg-soft);
	font-size: 0.8125rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.myaccount-content table tr:last-child td,
.myaccount-content table tbody tr:last-child td,
.myaccount-content table tbody tr:last-child th {
	border-bottom: none;
}

.myaccount-content .woocommerce-orders-table__cell-order-actions a {
	display: inline-block;
	padding: 5px 14px;
	border-radius: var(--radius-pill);
	font-size: 0.8rem;
	font-weight: 600;
	background: var(--color-bg-soft);
	color: var(--color-ink);
	border: 1px solid var(--color-border);
	transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease);
	margin: 2px;
}

.myaccount-content .woocommerce-orders-table__cell-order-actions a:hover {
	background: var(--color-accent);
	border-color: var(--color-accent);
	color: #fff;
}

/* Status badge comenzi */
.myaccount-content .order-status,
.myaccount-content mark.order-status {
	display: inline-block;
	padding: 3px 10px;
	border-radius: var(--radius-pill);
	font-size: 0.75rem;
	font-weight: 600;
	background: var(--color-bg-soft);
	color: var(--color-muted);
}

.myaccount-content mark.order-status.status-completed { background: rgba(34,197,94,0.12); color: #16a34a; }
.myaccount-content mark.order-status.status-processing { background: rgba(59,130,246,0.12); color: #2563eb; }
.myaccount-content mark.order-status.status-on-hold { background: rgba(234,179,8,0.12); color: #ca8a04; }
.myaccount-content mark.order-status.status-cancelled,
.myaccount-content mark.order-status.status-failed { background: rgba(239,68,68,0.10); color: #dc2626; }
.myaccount-content mark.order-status.status-refunded { background: rgba(168,85,247,0.10); color: #9333ea; }
.myaccount-content mark.order-status.status-pending { background: rgba(156,163,175,0.15); color: #6b7280; }

/* Formulare edit-account / edit-address */
.woocommerce-EditAccountForm .form-row,
.woocommerce-address-fields .form-row {
	margin-bottom: 14px;
}

.woocommerce-EditAccountForm fieldset {
	border: 1.5px solid var(--color-border);
	border-radius: 12px;
	padding: 20px;
	margin: 24px 0 14px;
}

.woocommerce-EditAccountForm fieldset legend {
	font-size: var(--fs-small);
	font-weight: 600;
	color: var(--color-muted);
	padding: 0 8px;
}

.woocommerce-EditAccountForm .woocommerce-Button,
.woocommerce-address-fields + .woocommerce-Button,
.myaccount-content .button[type="submit"],
.myaccount-content button[name="save_account_details"],
.myaccount-content button[name="save_address"] {
	display: inline-flex;
	align-items: center;
	padding: 12px 32px;
	background: var(--color-accent);
	color: #fff;
	border: none;
	border-radius: var(--radius-pill);
	font-size: 0.9375rem;
	font-family: var(--font-body);
	font-weight: 600;
	cursor: pointer;
	transition: opacity var(--dur) var(--ease);
	margin-top: 8px;
}

.woocommerce-EditAccountForm .woocommerce-Button:hover,
.myaccount-content button[name="save_account_details"]:hover,
.myaccount-content button[name="save_address"]:hover {
	opacity: 0.88;
}

/* form-row-first / form-row-last — stivuite pe mobil, 2 col pe desktop */
.woocommerce-EditAccountForm .form-row-first,
.woocommerce-EditAccountForm .form-row-last,
.woocommerce-address-fields .form-row-first,
.woocommerce-address-fields .form-row-last {
	float: none;
	width: 100%;
	clear: none;
}

/* Inputs & selects — lățime completă, nu depășesc containerul */
.woocommerce-EditAccountForm .form-row input,
.woocommerce-EditAccountForm .form-row select,
.woocommerce-EditAccountForm .form-row textarea,
.woocommerce-address-fields .form-row input,
.woocommerce-address-fields .form-row select,
.woocommerce-address-fields .form-row textarea {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

/* Textul ajutător din form (span cu descriere lungă) */
.woocommerce-EditAccountForm .form-row > span:not(.required):not(.woocommerce-input-wrapper),
.woocommerce-EditAccountForm .form-row em,
.woocommerce-address-fields .form-row > span:not(.required):not(.woocommerce-input-wrapper),
.woocommerce-address-fields .form-row em {
	display: block;
	word-break: break-word;
	overflow-wrap: break-word;
	font-size: var(--fs-small);
	color: var(--color-muted);
	margin-top: 4px;
}

/* Adrese (my-address.php) */
.myaddress-intro {
	font-size: 0.9375rem;
	color: var(--color-muted);
	margin-bottom: 28px;
}

.myaddress-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 48px;
}

.myaddress-col__header {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 14px;
}

.myaddress-col__title {
	font-family: var(--font-heading);
	font-size: 1.1rem;
	font-weight: 400;
	color: var(--color-ink);
	margin: 0;
}

.myaddress-col__edit {
	display: inline-block;
	padding: 5px 14px;
	font-size: 0.8125rem;
	font-weight: 600;
	color: var(--color-accent);
	border: 1.5px solid var(--color-accent);
	border-radius: var(--radius-pill);
	text-decoration: none;
	white-space: nowrap;
	flex-shrink: 0;
	transition: background var(--dur) var(--ease), color var(--dur) var(--ease);
}

.myaddress-col__edit:hover {
	background: var(--color-accent);
	color: #fff;
}

.myaddress-col__body {
	font-style: normal;
	font-size: 0.9375rem;
	line-height: 1.75;
	color: var(--color-ink);
}

.myaddress-col__body * {
	color: var(--color-ink) !important;
	font-style: normal !important;
	text-decoration: none;
}

.myaddress-col__empty {
	color: var(--color-muted);
	font-size: var(--fs-small);
}

@media (max-width: 640px) {
	.myaddress-grid {
		grid-template-columns: 1fr;
		gap: 32px;
	}
}

/* Dashboard shortcuts */
.myaccount-dashboard__shortcuts {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
	margin-top: 28px;
}

.dashboard-shortcut {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	padding: 24px 16px;
	border-radius: 15px;
	color: var(--color-muted);
	text-align: center;
	font-size: var(--fs-small);
	font-weight: 500;
	transition: color var(--dur) var(--ease), background var(--dur) var(--ease);
}

.dashboard-shortcut svg {
	flex-shrink: 0;
}

.dashboard-shortcut:hover {
	color: var(--color-accent);
	background: rgba(230, 175, 93, 0.06);
}

/* ---- Responsive cont ---- */

/* Tabletă landscape */
@media (max-width: 1024px) {
	.myaccount-dashboard__shortcuts {
		grid-template-columns: repeat(2, 1fr);
	}

	.myaddress-grid {
		gap: 28px;
	}
}

/* Tabletă portrait */
@media (max-width: 768px) {
	.myaccount-page {
		padding-block: 24px 40px;
	}

	.myaccount-nav {
		position: static;
		margin-bottom: 24px;
		max-width: 100%;
		overflow-x: hidden;
	}

	/* Nav orizontal scrollabil */
	.myaccount-nav ul {
		flex-direction: row;
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: auto;
		overscroll-behavior-x: none;
		gap: 4px;
		padding-bottom: 4px;
		scrollbar-width: none;
	}

	.myaccount-nav ul::-webkit-scrollbar {
		display: none;
	}

	.myaccount-nav li {
		flex-shrink: 0;
	}

	.myaccount-nav li a {
		padding: 8px 14px;
		font-size: 0.8125rem;
		white-space: nowrap;
		border-radius: var(--radius-pill);
	}

	/* Tabel comenzi — scroll orizontal */
	.myaccount-content .woocommerce-orders-table,
	.myaccount-content table {
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		white-space: nowrap;
	}

	/* Adrese */
	.myaddress-grid {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	/* View order — adrese 1 coloană */
	.woocommerce-columns--2 {
		grid-template-columns: 1fr;
	}

	/* Login — stivuit */
	.auth-login-wrap--split {
		flex-direction: column;
		align-items: stretch;
	}

	.auth-login-wrap--split .auth-panel--register {
		border-left: none;
		border-top: 1px solid var(--color-border);
		padding-left: 0;
		padding-top: 32px;
	}
}

/* Mobil */
@media (max-width: 480px) {
	.myaccount-page {
		padding-block: 16px 32px;
	}

	.myaccount-nav li a {
		padding: 7px 12px;
		font-size: 0.75rem;
	}

	.myaccount-dashboard__shortcuts {
		grid-template-columns: 1fr 1fr;
		gap: 8px;
	}

	.dashboard-shortcut {
		padding: 18px 10px;
		font-size: 0.75rem;
		gap: 8px;
	}

	.dashboard-shortcut svg {
		width: 20px;
		height: 20px;
	}

	.auth-login-wrap {
		padding-block: 0;
		padding-inline: 0;
	}

	.auth-panel__title {
		font-size: 1.4rem;
	}


	/* Tabel comenzi pe mobil — card per comandă, fără linii interne */
	.myaccount-content .woocommerce-orders-table {
		white-space: normal;
		display: block;
		overflow-x: visible;
	}

	.myaccount-content .woocommerce-orders-table thead,
	.myaccount-content .woocommerce-orders-table tfoot {
		display: none;
	}

	.myaccount-content .woocommerce-orders-table tbody {
		display: block;
	}

	.myaccount-content .woocommerce-orders-table tbody tr {
		display: grid;
		grid-template-columns: 1fr auto;
		gap: 2px 12px;
		padding: 14px 0;
		border-bottom: 1px solid var(--color-border);
		border-top: none;
	}

	.myaccount-content .woocommerce-orders-table tbody td,
	.myaccount-content .woocommerce-orders-table tbody th {
		padding: 0;
		border: none;
		border-bottom: none;
		background: transparent;
		font-size: 0.875rem;
		vertical-align: top;
		text-transform: none;
		letter-spacing: 0;
		color: var(--color-ink);
	}

	.myaccount-content .woocommerce-orders-table__cell-order-number {
		font-weight: 600;
		color: var(--color-accent);
		grid-row: 1;
		grid-column: 1;
	}

	.myaccount-content .woocommerce-orders-table__cell-order-number a {
		color: var(--color-accent);
		text-decoration: none;
		font-weight: 600;
	}

	.myaccount-content .woocommerce-orders-table__cell-order-status {
		grid-row: 1;
		grid-column: 2;
		text-align: right;
	}

	.myaccount-content .woocommerce-orders-table__cell-order-date {
		grid-row: 2;
		grid-column: 1;
		color: var(--color-muted);
		font-size: 0.8125rem;
	}

	.myaccount-content .woocommerce-orders-table__cell-order-total {
		grid-row: 2;
		grid-column: 2;
		font-weight: 600;
		text-align: right;
	}

	.myaccount-content .woocommerce-orders-table__cell-order-actions {
		grid-row: 3;
		grid-column: 1 / -1;
		padding-top: 6px;
		text-align: right;
	}
}

/* =============================================================
   VIEW ORDER — detalii comandă individuală
   ============================================================= */

/* Mesaj intro "Comanda nr. X a fost plasată pe..." */
.woocommerce-order > p:first-of-type {
	font-size: 0.9375rem;
	color: var(--color-muted);
	line-height: 1.6;
	margin-bottom: 28px;
}

/* Badge stare în mesajul intro */
.woocommerce-order > p mark.order-status {
	display: inline-block;
	padding: 2px 10px;
	border-radius: var(--radius-pill);
	font-size: 0.8125rem;
	font-weight: 600;
	font-style: normal;
	background: var(--color-bg-soft);
	color: var(--color-muted);
}

/* Titluri secțiuni (Detalii comandă, Adresă de facturare etc.) */
.woocommerce-order-details {
	margin-top: 40px;
}

.woocommerce-order-details__title,
.woocommerce-column__title {
	font-family: var(--font-heading);
	font-size: 1.2rem;
	font-weight: 400;
	color: var(--color-ink);
	margin: 0 0 16px;
}

/* Tabel produse */
.woocommerce-table--order-details {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.9375rem;
}

.woocommerce-table--order-details th,
.woocommerce-table--order-details td {
	border-bottom: none !important;
	border-top: none !important;
}

.woocommerce-table--order-details thead th {
	font-size: 0.8rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--color-muted);
	padding: 0 0 10px;
}

.woocommerce-table--order-details thead th:last-child {
	text-align: right;
}

.woocommerce-table--order-details tbody td {
	padding: 10px 0;
	color: var(--color-ink);
	vertical-align: middle;
}

.woocommerce-table--order-details tbody .product-total {
	text-align: right;
	font-weight: 600;
}

.woocommerce-table--order-details tfoot th,
.woocommerce-table--order-details tfoot td {
	padding: 6px 0;
	font-size: 0.9375rem;
}

.woocommerce-table--order-details tfoot th {
	color: var(--color-muted);
	font-weight: 400;
}

.woocommerce-table--order-details tfoot td {
	text-align: right;
	font-weight: 600;
	color: var(--color-ink);
}

.woocommerce-table--order-details tfoot .order-total th,
.woocommerce-table--order-details tfoot .order-total td {
	padding-top: 14px;
	font-size: 1.05rem;
	font-weight: 700;
}

.woocommerce-table--order-details tfoot .order-total td {
	color: var(--color-accent);
}

/* Secțiunea adrese client */
.woocommerce-customer-details {
	margin-top: 40px;
}

.woocommerce-customer-details > h2 {
	font-family: var(--font-heading);
	font-size: 1.2rem;
	font-weight: 400;
	color: var(--color-ink);
	margin: 0 0 20px;
}

.woocommerce-columns--2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.woocommerce-column {
	padding: 0;
}

.woocommerce-column .woocommerce-column__title {
	margin-bottom: 12px;
}

/* Textul adresei — resetează culoarea cyan/link moștenită */
.woocommerce-customer-details address,
.woocommerce-customer-details address a,
.woocommerce-customer-details address p,
.woocommerce-customer-details address * {
	font-style: normal;
	font-size: 0.9375rem;
	line-height: 1.75;
	color: var(--color-ink) !important;
	text-decoration: none;
}

/* Buton "Comandă din nou" */
.woocommerce-order-again .button,
.woocommerce-order-again a {
	display: inline-flex;
	align-items: center;
	padding: 11px 28px;
	background: var(--color-accent);
	color: #fff !important;
	border-radius: var(--radius-pill);
	font-size: 0.9375rem;
	font-weight: 600;
	text-decoration: none;
	margin-top: 28px;
	transition: opacity var(--dur) var(--ease);
}

.woocommerce-order-again .button:hover,
.woocommerce-order-again a:hover {
	opacity: 0.88;
}

@media (max-width: 640px) {
	.woocommerce-columns--2 {
		grid-template-columns: 1fr;
	}
}

/* =============================================================
   PAGINA DE MULȚUMIRE (thankyou.php)
   ============================================================= */

.thankyou-wrapper {
	padding: 60px 0 80px;
}

/* Hero — success / failed */
.thankyou-hero {
	text-align: center;
	max-width: 560px;
	margin: 0 auto 48px;
}

.thankyou-hero__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 80px;
	height: 80px;
	border-radius: 50%;
	background: rgba(230, 175, 93, 0.12);
	color: var(--color-accent);
	margin-bottom: 20px;
}

.thankyou-hero--failed .thankyou-hero__icon {
	background: rgba(239, 68, 68, 0.10);
	color: #ef4444;
}

.thankyou-hero__title {
	font-family: var(--font-heading);
	font-size: clamp(1.6rem, 3vw, 2.2rem);
	font-weight: 400;
	color: var(--color-ink);
	margin: 0 0 12px;
}

.thankyou-hero__sub {
	font-size: 0.9375rem;
	color: var(--color-muted);
	line-height: 1.65;
	margin: 0 0 28px;
}

.thankyou-hero__actions {
	display: flex;
	gap: 12px;
	justify-content: center;
	flex-wrap: wrap;
}

/* Grid 2 coloane */
.thankyou-grid {
	display: grid;
	grid-template-columns: 1fr 320px;
	gap: 24px;
	align-items: start;
}

/* Card generic */
.thankyou-card {
	background: var(--color-bg-soft);
	border-radius: 15px;
	padding: 24px;
	margin-bottom: 20px;
}

.thankyou-card:last-child {
	margin-bottom: 0;
}

.thankyou-card__title {
	font-family: var(--font-heading);
	font-size: 1.05rem;
	font-weight: 400;
	color: var(--color-ink);
	margin: 0 0 20px;
	padding-bottom: 14px;
	border-bottom: 1px solid var(--color-border);
}

/* Sumar date comandă */
.order-overview {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.order-overview__item {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 12px;
	font-size: 0.9375rem;
}

.order-overview__label {
	color: var(--color-muted);
}

.order-overview__value {
	font-weight: 600;
	color: var(--color-ink);
	text-align: right;
}

.order-overview__value--total {
	color: var(--color-accent);
	font-size: 1.05rem;
}

/* Adresă */
.thankyou-address {
	font-style: normal;
	font-size: 0.9375rem;
	line-height: 1.7;
	color: var(--color-ink);
}

.thankyou-address__phone {
	display: flex;
	align-items: center;
	gap: 6px;
	margin: 10px 0 0;
	font-size: 0.875rem;
	color: var(--color-muted);
}

/* Acțiuni sidebar */
.thankyou-actions {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.btn--full {
	width: 100%;
	text-align: center;
	justify-content: center;
}

/* Tabelul de produse din WooCommerce (woocommerce_thankyou hook) */
.thankyou-card .woocommerce-table--order-details {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.9375rem;
}

.thankyou-card .woocommerce-table--order-details th,
.thankyou-card .woocommerce-table--order-details td {
	padding: 10px 0;
	border-bottom: 1px solid var(--color-border);
	vertical-align: top;
}

.thankyou-card .woocommerce-table--order-details tfoot td,
.thankyou-card .woocommerce-table--order-details tfoot th {
	font-weight: 600;
}

.thankyou-card .woocommerce-table--order-details tfoot tr:last-child td,
.thankyou-card .woocommerce-table--order-details tfoot tr:last-child th {
	border-bottom: none;
	color: var(--color-accent);
	font-size: 1rem;
}

/* Responsive */
@media (max-width: 900px) {
	.thankyou-grid {
		grid-template-columns: 1fr;
	}

	.thankyou-col-side {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 20px;
	}

	.thankyou-actions {
		grid-column: 1 / -1;
		flex-direction: row;
	}
}

@media (max-width: 600px) {
	.thankyou-wrapper {
		padding: 40px 0 60px;
	}

	.thankyou-col-side {
		grid-template-columns: 1fr;
	}

	.thankyou-actions {
		flex-direction: column;
	}
}


/* ==========================================================================
   SEO — Descriere categorie (truncată) + FAQ accordion
   ========================================================================== */

/* ---- Descriere primară (truncată la 5 rânduri) ---- */
.cat-primary-desc {
	position: relative;
	margin-bottom: 12px;
	overflow: hidden;
	max-height: calc(5 * 1.7em);
	transition: max-height 0.45s ease;
}

.cat-primary-desc.is-expanded {
	max-height: 600px;
}

.cat-primary-desc__inner {
	font-size: 0.9375rem;
	line-height: 1.7;
	color: var(--color-muted);
}

.cat-primary-desc__inner p { margin: 0 0 0.75em; }
.cat-primary-desc__inner p:last-child { margin-bottom: 0; }

.cat-primary-desc__fade {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 3em;
	background: linear-gradient(to bottom, transparent, var(--color-bg, #fff));
	pointer-events: none;
	transition: opacity 0.3s ease;
}

.cat-primary-desc.is-expanded .cat-primary-desc__fade {
	opacity: 0;
}

.cat-primary-desc__toggle {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--color-accent);
	font-family: var(--font-body);
	margin-bottom: 32px;
	transition: color var(--dur) var(--ease);
}

.cat-primary-desc__toggle:hover { color: var(--color-ink); }

.cat-primary-desc__toggle-icon {
	transition: transform 0.3s ease;
	flex-shrink: 0;
}

.cat-primary-desc__toggle[aria-expanded=true] .cat-primary-desc__toggle-icon {
	transform: rotate(180deg);
}

/* ---- Intro H1 + descriere scurtă (taxonomy-product-cat.php) ---- */
.cat-intro {
	padding-top: 32px;
	padding-bottom: 4px;
}

.cat-description {
	font-size: 0.9375rem;
	line-height: 1.7;
	color: var(--color-muted);
	margin-top: 8px;
}

.cat-description__toggle {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--color-accent);
	font-family: var(--font-body);
	vertical-align: middle;
	transition: color var(--dur) var(--ease);
}

.cat-description__toggle:hover { color: var(--color-ink); }

.cat-description__toggle svg {
	flex-shrink: 0;
	transition: transform 0.25s ease;
}

.cat-description__less svg {
	transform: rotate(180deg);
}

/* ---- Descriere 2 (după paginare) ---- */
.cat-desc2 {
	margin-top: 48px;
	font-size: 0.9375rem;
	line-height: 1.75;
	color: var(--color-muted);
}

.cat-desc2 h2, .cat-desc2 h3 {
	font-family: var(--font-heading);
	color: var(--color-ink);
	margin-bottom: 12px;
}

.cat-desc2 p { margin-bottom: 1em; }

/* ---- FAQ accordion (după paginare) ---- */
.cat-faq {
	margin-top: 48px;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	overflow: hidden;
}

.cat-faq__title {
	font-family: var(--font-heading);
	font-size: 1.35rem;
	font-weight: 400;
	padding: 18px 24px;
	border-bottom: 1px solid var(--color-border);
	margin: 0;
	background: var(--color-bg-alt);
}

.cat-faq__list {
	display: flex;
	flex-direction: column;
}

.cat-faq__item {
	border-bottom: 1px solid var(--color-border);
}

.cat-faq__item:last-child {
	border-bottom: none;
}

.cat-faq__question {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	width: 100%;
	text-align: left;
	padding: 18px 24px;
	font-size: 1.0625rem;
	font-weight: 600;
	line-height: 1.35;
	color: var(--color-ink);
	cursor: pointer;
	list-style: none;
	transition: color var(--dur) var(--ease), background var(--dur) var(--ease);
}

.cat-faq__question::-webkit-details-marker { display: none; }
.cat-faq__question::marker { display: none; }

.cat-faq__question::after {
	content: '';
	display: block;
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23332F2C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	transition: transform 0.25s var(--ease);
}

.cat-faq__question:hover {
	color: var(--color-accent);
	background: var(--color-bg-soft);
}

.cat-faq__item[open] > .cat-faq__question {
	color: var(--color-accent);
}

.cat-faq__item[open] > .cat-faq__question::after {
	transform: rotate(180deg);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23E6AF5D' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
}

.cat-faq__answer {
	padding: 14px 24px 20px;
	font-size: 0.875rem;
	color: var(--color-muted);
	line-height: var(--lh-body);
	border-top: 1px solid var(--color-border);
}

.cat-faq__answer p { margin-bottom: 0.75em; }
.cat-faq__answer p:last-child { margin-bottom: 0; }

@media (max-width: 600px) {
	.cat-faq__question {
		font-size: 0.9375rem;
		padding: 14px 16px;
	}
	.cat-faq__answer {
		padding: 12px 16px 16px;
	}
	.cat-faq__title {
		padding: 14px 16px;
	}
}

/* ---- Articole utile (secțiune blog în pagina categorie) ---- */
.cat-blog-articles {
	margin-top: 56px;
	padding-bottom: 64px;
}

.cat-blog-articles__head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 28px;
}

.cat-blog-articles__title {
	font-family: var(--font-heading);
	font-size: clamp(1.25rem, 2vw, 1.625rem);
	font-weight: 400;
	color: var(--color-ink);
	margin: 0;
}

.cat-blog-articles__all {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 0.8125rem;
	font-weight: 600;
	color: var(--color-accent);
	text-decoration: none;
	letter-spacing: 0.02em;
	white-space: nowrap;
	flex-shrink: 0;
	transition: gap var(--dur) var(--ease), color var(--dur) var(--ease);
}

.cat-blog-articles__all:hover {
	color: var(--color-ink);
	gap: 10px;
}

.cat-blog-articles__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 32px;
}

@media (max-width: 900px) {
	.cat-blog-articles__grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 560px) {
	.cat-blog-articles__grid { grid-template-columns: 1fr; }
}
