/**
 * هدر: کلاس روی کانتینر اصلی در Elementor → Advanced → CSS Classes = header-aelab
 * ۱) sticky مرورگر وقتی هیچ والدی overflow غیر visible نداشته باشد.
 * ۲) کلاس .aelab-header-stuck توسط header-aelab-sticky.js برای fixed + اسپیسر.
 * z-index بالاتر از overlay منوی الفبایی افزونه (۱۰۰۱).
 */

/* والد هدر تم‌بیلدر: overflow غیر visible اغلب sticky را می‌کشد */
header.elementor-location-header:has(> .header-aelab),
header[data-elementor-type="header"]:has(> .header-aelab),
.elementor-location-header:has(> .header-aelab) {
	overflow: visible !important;
	overflow-x: visible !important;
	overflow-y: visible !important;
}

/* سلکتور قوی‌تر برای غلبه بر تم/استایل‌های بعدی */
header.elementor-location-header > .elementor-element.header-aelab.e-con,
header[data-elementor-type="header"] > .elementor-element.header-aelab.e-con {
	position: sticky !important;
	top: 0 !important;
	z-index: 10050 !important;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	align-self: stretch;
}

body.admin-bar header.elementor-location-header > .elementor-element.header-aelab.e-con,
body.admin-bar header[data-elementor-type="header"] > .elementor-element.header-aelab.e-con {
	top: 32px !important;
}

@media (max-width: 782px) {
	body.admin-bar header.elementor-location-header > .elementor-element.header-aelab.e-con,
	body.admin-bar header[data-elementor-type="header"] > .elementor-element.header-aelab.e-con {
		top: 46px !important;
	}
}

.header-aelab {
	position: sticky !important;
	top: 0 !important;
	z-index: 10050 !important;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	align-self: stretch;
}

/* زیر نوار مدیریت وردپرس؛ در غیر این صورت sticky به لبهٔ ۰ viewport می‌چسبد و زیر admin دیده می‌شود */
body.admin-bar .header-aelab {
	top: 32px !important;
}

@media (max-width: 782px) {
	body.admin-bar .header-aelab {
		top: 46px !important;
	}
}

header[data-elementor-type="header"] > .header-aelab,
header.elementor-location-header > .header-aelab,
.elementor-location-header > .header-aelab,
.elementor-element[data-elementor-type="header"] > .header-aelab {
	position: sticky !important;
	top: 0 !important;
	z-index: 10050 !important;
}

body.admin-bar header[data-elementor-type="header"] > .header-aelab,
body.admin-bar header.elementor-location-header > .header-aelab,
body.admin-bar .elementor-location-header > .header-aelab,
body.admin-bar .elementor-element[data-elementor-type="header"] > .header-aelab {
	top: 32px !important;
}

@media (max-width: 782px) {
	body.admin-bar header[data-elementor-type="header"] > .header-aelab,
	body.admin-bar header.elementor-location-header > .header-aelab,
	body.admin-bar .elementor-location-header > .header-aelab,
	body.admin-bar .elementor-element[data-elementor-type="header"] > .header-aelab {
		top: 46px !important;
	}
}

header.elementor-location-header > .elementor-element.header-aelab.e-con.aelab-header-stuck,
header[data-elementor-type="header"] > .elementor-element.header-aelab.e-con.aelab-header-stuck {
	position: fixed !important;
	left: 0 !important;
	right: 0 !important;
	top: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	z-index: 10050 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.admin-bar header.elementor-location-header > .elementor-element.header-aelab.e-con.aelab-header-stuck,
body.admin-bar header[data-elementor-type="header"] > .elementor-element.header-aelab.e-con.aelab-header-stuck {
	top: 32px !important;
}

@media (max-width: 782px) {
	body.admin-bar header.elementor-location-header > .elementor-element.header-aelab.e-con.aelab-header-stuck,
	body.admin-bar header[data-elementor-type="header"] > .elementor-element.header-aelab.e-con.aelab-header-stuck {
		top: 46px !important;
	}
}

/* حالت fixed (اسکرول) — جایگزین sticky وقتی والد sticky را خراب می‌کند */
.header-aelab.aelab-header-stuck {
	position: fixed !important;
	left: 0 !important;
	right: 0 !important;
	top: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	z-index: 10050 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.admin-bar .header-aelab.aelab-header-stuck {
	top: 32px !important;
}

@media (max-width: 782px) {
	body.admin-bar .header-aelab.aelab-header-stuck {
		top: 46px !important;
	}
}

/* Header (mobile) sticky support for Elementor sections using CSS class `header-aelab-mobile` */
header.elementor-location-header:has(> .header-aelab-mobile),
header[data-elementor-type="header"]:has(> .header-aelab-mobile),
.elementor-location-header:has(> .header-aelab-mobile) {
	overflow: visible !important;
	overflow-x: visible !important;
	overflow-y: visible !important;
}

/* Sticky (when not stuck) */
header.elementor-location-header > .elementor-element.header-aelab-mobile.e-con,
header[data-elementor-type="header"] > .elementor-element.header-aelab-mobile.e-con,
.header-aelab-mobile {
	position: sticky !important;
	top: 0 !important;
	z-index: 10050 !important;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	align-self: stretch;
}

body.admin-bar .header-aelab-mobile {
	top: 32px !important;
}

@media (max-width: 782px) {
	body.admin-bar .header-aelab-mobile {
		top: 46px !important;
	}
}

/* Fixed (when stuck) */
header.elementor-location-header > .elementor-element.header-aelab-mobile.e-con.aelab-header-stuck,
header[data-elementor-type="header"] > .elementor-element.header-aelab-mobile.e-con.aelab-header-stuck,
.header-aelab-mobile.aelab-header-stuck {
	position: fixed !important;
	left: 0 !important;
	right: 0 !important;
	top: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	z-index: 10050 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.admin-bar .header-aelab-mobile.aelab-header-stuck {
	top: 32px !important;
}

@media (max-width: 782px) {
	body.admin-bar .header-aelab-mobile.aelab-header-stuck {
		top: 46px !important;
	}
}

.aelab-header-aelab-spacer {
	display: none;
	width: 100%;
	flex-shrink: 0;
	pointer-events: none;
	visibility: hidden;
	overflow: hidden;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	box-sizing: border-box;
}

.aelab-header-aelab-spacer--active {
	display: block;
	visibility: hidden;
}
