/* Naseri Perfume – visual refresh layer. Remove mu-plugins/naseri-refresh.php to revert. */
:root {
	--nsp-ink: #1e2724;
	--nsp-green: #232e2a;
	--nsp-gold: #b08d57;
	--nsp-sand: #efe7d8;
	--nsp-ivory: #f7f4ee;
	--nsp-line: #ebe5da;
	--nsp-muted: #8b8a84;
}

/* ---------- Hero ---------- */
.elementor-element-1e3b7fe .promo-banner {
	border-radius: 24px;
	overflow: hidden;
}
.elementor-element-1e3b7fe .banner-image img {
	width: 100%;
	min-height: 420px;
	object-fit: cover;
}
.elementor-element-1e3b7fe .main-wrapp-img::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(18, 24, 22, .10) 0%, rgba(18, 24, 22, .58) 100%);
	pointer-events: none;
}
.elementor-element-1e3b7fe .main-wrapp-img { position: relative; }
.elementor-element-1e3b7fe .wrapper-content-banner { z-index: 2; }
.elementor-element-1e3b7fe .banner-title {
	color: #fff !important;
	font-size: clamp(28px, 3.6vw, 44px) !important;
	line-height: 1.35;
	margin-bottom: 10px;
	text-shadow: none !important;
}
.elementor-element-1e3b7fe .banner-inner,
.elementor-element-1e3b7fe .banner-inner p {
	color: rgba(255, 255, 255, .88) !important;
	font-size: clamp(14px, 1.3vw, 17px) !important;
	max-width: 520px;
	margin-inline: auto;
	text-shadow: none !important;
}

/* ---------- Category banners ---------- */
.elementor-element-6ad0f02 .promo-banner {
	border-radius: 20px;
	overflow: hidden;
}
.elementor-element-6ad0f02 .main-wrapp-img { position: relative; }
.elementor-element-6ad0f02 .banner-image img {
	width: 100%;
	aspect-ratio: 4 / 4.4;
	object-fit: cover;
}
.elementor-element-6ad0f02 .main-wrapp-img::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(0deg, rgba(15, 20, 18, .62) 0%, rgba(15, 20, 18, 0) 50%);
	pointer-events: none;
}
.elementor-element-6ad0f02 .wrapper-content-banner {
	align-items: flex-end !important;
	padding: 26px 28px !important;
	z-index: 2;
}
.elementor-element-6ad0f02 .content-banner { width: 100%; text-align: right !important; }
.elementor-element-6ad0f02 .wd-button-wrapper { text-align: right !important; }
.elementor-element-6ad0f02 .btn {
	background: transparent !important;
	color: #fff !important;
	box-shadow: none !important;
	padding: 0 !important;
	min-height: 0 !important;
	font-size: 21px !important;
	font-weight: 700 !important;
}
.elementor-element-6ad0f02 .btn .wd-btn-text::after {
	content: "";
	display: inline-block;
	width: 22px;
	height: 1px;
	margin-right: 12px;
	vertical-align: middle;
	background: currentColor;
	transition: width .3s ease;
}
.elementor-element-6ad0f02 .promo-banner:hover .btn .wd-btn-text::after { width: 40px; }

/* ---------- Section panels ---------- */
.elementor-element-07e1215 { background-color: var(--nsp-sand) !important; }

/* ---------- Product cards ---------- */
.wd-product .product-wrapper {
	background: #fff;
	border: 1px solid var(--nsp-line);
	border-radius: 16px;
	padding: 10px 10px 16px;
	height: 100%;
	transition: border-color .25s ease, box-shadow .25s ease;
}
.wd-product:hover .product-wrapper {
	border-color: #ddd2bf;
	box-shadow: 0 10px 28px -16px rgba(30, 39, 36, .28);
}
.wd-product .product-element-top {
	background: var(--nsp-ivory);
	border-radius: 12px;
	overflow: hidden;
	margin-bottom: 12px;
}
.wd-product .product-image-link img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: contain;
	mix-blend-mode: multiply;
	transition: transform .5s ease;
}
.wd-product:hover .product-image-link img { transform: scale(1.04); }

.wd-product .wd-entities-title {
	font-size: 14px;
	line-height: 1.6;
	margin-bottom: 4px;
}
.wd-product .wd-entities-title a { color: var(--nsp-ink); }
[class*="title-line-"] .wd-product .wd-entities-title[data-nsp-split] {
	max-height: none;
	overflow: visible;
}
.wd-product .nsp-name-fa,
.wd-product .nsp-name-en {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.nsp-name-fa { display: block; font-weight: 700; }
.nsp-name-en {
	display: block;
	direction: ltr;
	font-family: "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	font-size: 12px;
	font-weight: 400;
	color: var(--nsp-muted);
	letter-spacing: .02em;
	margin-top: 1px;
}
.wd-product .wd-product-cats,
.wd-product .wd-product-cats a {
	font-size: 11.5px;
	color: var(--nsp-gold) !important;
}
.wd-product .price {
	font-size: 12px;
	color: var(--nsp-muted) !important;
	margin-top: 6px;
}
.wd-product .price .amount {
	font-size: 15px;
	font-weight: 700;
	color: var(--nsp-ink) !important;
}
.wd-product .price .woocommerce-Price-currencySymbol {
	font-size: 12px;
	font-weight: 400;
	color: var(--nsp-muted);
}

/* ---------- Single product ---------- */
.single-product h1.product_title {
	font-size: 26px !important;
	line-height: 1.5;
	color: var(--nsp-ink);
}
.single-product h1.product_title .nsp-name-en { font-size: 15px; margin-top: 4px; }

.single-product .elementor-element-57a57868 > .elementor-widget-wrap {
	border: 1px solid var(--nsp-line) !important;
	background: var(--nsp-ivory);
	border-radius: 18px !important;
}
.single-product .elementor-element-7895a467 { color: #5e5d58; line-height: 1.9; }

.single-product .elementor-element-40d24ce0 > .elementor-widget-container {
	background: transparent !important;
	padding-block: 0 !important;
}
.single-product .elementor-element-40d24ce0 .product_meta { color: var(--nsp-muted); font-size: 13px; }
.single-product .elementor-element-40d24ce0 a { color: var(--nsp-gold); }

.single-product .price .amount { color: var(--nsp-ink); font-weight: 700; }

.button-variable-items-wrapper .variable-item:not(.radio-variable-item) {
	border-radius: 999px !important;
	box-shadow: 0 0 0 1px #d9d2c5 !important;
	background: #fff !important;
	min-width: 76px;
	height: 40px !important;
	padding: 0 16px !important;
	transition: box-shadow .2s ease, background .2s ease;
}
.button-variable-items-wrapper .variable-item:not(.radio-variable-item):hover {
	box-shadow: 0 0 0 1px var(--nsp-ink) !important;
}
.button-variable-items-wrapper .variable-item.selected:not(.radio-variable-item) {
	background: var(--nsp-ink) !important;
	box-shadow: 0 0 0 1px var(--nsp-ink) !important;
}
.button-variable-items-wrapper .variable-item.selected .variable-item-span { color: #fff !important; }
.button-variable-items-wrapper .variable-item-span { font-size: 13px; color: var(--nsp-ink); }

.single-product .elementor-element-4659a9bd {
	width: auto !important;
	max-width: none !important;
}
.single-product .elementor-element-4659a9bd > .elementor-widget-container {
	border: 0 !important;
	padding: 0 !important;
}
.wd-single-wishlist-btn .wd-action-btn > a {
	border: 1px solid #d9d2c5 !important;
	border-radius: 999px !important;
	padding: 9px 18px !important;
	color: var(--nsp-ink) !important;
	font-size: 13px !important;
	white-space: nowrap;
	background: #fff;
}
.wd-single-wishlist-btn .wd-action-btn > a:hover { border-color: var(--nsp-ink) !important; }

/* ---------- Mobile ---------- */
@media (max-width: 767px) {
	.elementor-element-1e3b7fe .banner-image img { min-height: 300px; }
	.elementor-element-1e3b7fe .wrapper-content-banner { padding: 20px !important; }
	.elementor-element-6ad0f02 .banner-image img { aspect-ratio: 16 / 10; }
	.elementor-element-6ad0f02 .wrapper-content-banner { padding: 18px 20px !important; }
	.elementor-element-6ad0f02 .btn { font-size: 18px !important; }
	.wd-product .product-wrapper { padding: 8px 8px 12px; border-radius: 14px; }
	.wd-product .wd-entities-title { font-size: 13px; }
	.nsp-name-en { font-size: 11px; }
	.wd-product .price .amount { font-size: 14px; }
	.single-product h1.product_title { font-size: 21px !important; }
}
