/**
* Categories menu styles
*/

/* Categories navigation trigger btn */
.home .elementor-sticky--effects .categories_btn._header {
	display: block;
}
.categories_btn.pointer_events_none {
	pointer-events: none;
}
.categories_btn .elementor-button-icon {
	position: relative;
}
.categories_btn:not(.sticky) .elementor-button-icon::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	background-image: url("../../../../../wp-content/uploads/2025/07/X-colored.svg");
	background-position: center;
	background-size: contain;
	opacity: 0;
}
body:has(.categories-nav li.menu-item._active) .categories_btn {
	position: relative;
	pointer-events: all;
}
.categories_btn::before {
	--underlay-width: 0;
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	display: inline-block;
	height: 100%;
	width: var(--underlay-width);
	background-color: var(--e-global-color-7e5d424);
	box-shadow: 0px -1px 24px 0px rgba(33, 33, 33, 0.04);
	border-radius: 12px 12px 0 0;
	border-bottom: 1px solid #e4e4e7;
	z-index: -1;
}
body:has(.categories-nav._home li.menu-item._active) .categories_btn.categories_btn_home::before,
body:has(.categories-nav._header li.menu-item._active) .categories_btn._header::before,
body:has(.categories-nav._page li.menu-item._active) .categories_btn._page::before {
	--underlay-width: 200%;
}
body:has(.categories-nav._page li.menu-item._active) .categories_btn._page::before {
	border-radius: 20px 20px 0 0;
}
body:has(.categories-nav._header li.menu-item._active) .categories_btn:is(.categories_btn_home, ._header) a,
body:has(.categories-nav._page li.menu-item._active) .categories_btn._page a {
	box-shadow: none;
}
body:has(.categories-nav._home .sub-menu li.menu-item._active) .categories_btn.categories_btn_home::before,
body:has(.categories-nav._header .sub-menu li.menu-item._active) .categories_btn._header::before,
body:has(.categories-nav._page .sub-menu li.menu-item._active) .categories_btn._page::before,
body:has(.categories-nav._home .sub-menu li.menu-item.menu-item-has-children:hover) .categories_btn.categories_btn_home::before,
body:has(.categories-nav._header .sub-menu li.menu-item.menu-item-has-children:hover) .categories_btn._header::before,
body:has(.categories-nav._page .sub-menu li.menu-item.menu-item-has-children:hover) .categories_btn._page::before {
	--underlay-width: calc(300% - 2px) !important;
}
body:has(.categories-nav._home li.menu-item._active) .categories_btn.categories_btn_home a.elementor-button {
	max-width: max-content;
	cursor: pointer;
	box-shadow: none;
}
body:has(.categories-nav._home li.menu-item._active) .categories_btn:not(.sticky) .elementor-button-icon svg {
	opacity: 0;
}
body:has(.categories-nav._home li.menu-item._active) .categories_btn:not(.sticky) .elementor-button-icon::before {
	opacity: 1;
}

/* Categories navigation */
.categories-nav {
	font-weight: 500;
}
.categories-nav ul {
	padding: 12px;
	background-color: var(--e-global-color-7e5d424);
	list-style-type: none;
}
.categories-nav ul.menu {
	position: relative;
}
.categories-nav > ul {
	border-radius: 0 0 12px 12px;
	box-shadow: 0 4px 24px 0 rgba(106, 87, 54, 0.08);
}
.categories-nav > ul:has(li.menu-item._active) {
	box-shadow: initial;
}
.categories-nav ul.menu {
	display: flex;
}
.categories-nav ul:is(.menu, .sub-menu, .sub-sub-menu) {
	flex-flow: column wrap;
	gap: 8px;
}
.categories-nav :is(.sub-menu, .sub-sub-menu) {
	position: absolute;
	top: -1px;
	right: -100%;
	display: none;
	width: 100%;
	min-height: calc(100% + 1px);
	border-top: 1px solid #e4e4e7;
	border-left: 1px solid #e4e4e7;
}
.categories-nav li.menu-item.menu-item-has-children:not(.menu-item-depth-0) {
	padding-inline-end: 12px;
	margin-inline-end: -12px;
}
.categories-nav li.menu-item.menu-item-has-children._active > :is(.sub-menu, .sub-sub-menu),
.categories-nav li.menu-item.menu-item-has-children:not(.menu-item-depth-0):hover > :is(.sub-menu, .sub-sub-menu) {
	display: flex;
}
.categories-nav .sub-menu:not(.sub-sub-menu) > li.menu-item:first-of-type a.menu-link {
	background-color: #F8E7CB;
	color: var(--e-global-color-primary);
	transition: border-color 0.4s ease, background-color 0.4s ease;
}
.categories-nav .sub-menu:not(.sub-sub-menu) > li.menu-item:first-of-type a.menu-link:hover {
	border-color: var(--e-global-color-d1ad92c);
	color: var(--e-global-color-primary);
	background-color: var(--e-global-color-d1ad92c);
}
.categories-nav ul.menu li.menu-item {
	padding: 0;
}
.categories-nav ul:is(.sub-menu, .sub-sub-menu)::before {
	--underlay-width: 0;
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	display: inline-block;
	height: 100%;
	width: var(--underlay-width);
	z-index: -1;
	background-color: var(--e-global-color-7e5d424);
	box-shadow: 0 4px 24px 0 rgba(106, 87, 54, 0.08);
	border-radius: 12px;
}
.categories-nav._page ul:is(.sub-menu, .sub-sub-menu)::before {
	border-radius: 20px;
}
.categories-nav li.menu-item.menu-item-has-children:not(.menu-item-depth-0):hover > ul:is(.sub-menu, .sub-sub-menu) {
	border-radius: 0 0 12px 0;
}
.categories-nav._page li.menu-item._active > ul:is(.sub-menu, .sub-sub-menu) {
	border-radius: 0 0 20px 0;
}
.categories-nav li.menu-item._active > ul.sub-menu::before {
	--underlay-width: calc(200% + 2px);
}
.categories-nav li.menu-item.menu-item-has-children:not(.menu-item-depth-0):hover > ul.sub-sub-menu::before,
.categories-nav li.menu-item._active > ul.sub-sub-menu::before {
	--underlay-width: calc(300% + 5px);
}
.categories-nav li.menu-item._active > ul.sub-menu:has(.menu-item._active)::before {
	--underlay-width: 0;
}
.categories-nav ul.menu li.menu-item a.menu-link {
	padding: 16px;
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	border: 1px solid var(--e-global-color-primary);
	border-radius: 12px;
	color: var(--e-global-color-text);
	transition: background-color 0.4s ease;
}
.categories-nav ul.menu li.menu-item a.menu-link:hover,
.categories-nav li.menu-item.menu-item-has-children:not(.menu-item-depth-0):hover > a.menu-link,
.categories-nav ul.menu li.menu-item._active > a.menu-link {
	background-color: var(--e-global-color-d1ad92c);
	color: var(--e-global-color-text);
}
.categories-nav ul.menu li.menu-item a.menu-link svg {
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: contain;
}
.categories-nav ul.menu li.menu-item a.menu-link svg:not(.menu-item-arrow) {
	width: 24px;
	min-width: 24px;
}
.categories-nav ul.menu li.menu-item a.menu-link svg path[fill] {
	transition: fill 0.4s ease;
}
.categories-nav ul.menu li.menu-item a.menu-link svg:not(.menu-item-arrow) path[fill] {
	fill: var(--e-global-color-primary);
}
.categories-nav ul.menu li.menu-item a.menu-link svg.menu-item-arrow path[fill] {
	fill: var(--e-global-color-text);
}
.categories-nav ul.menu li.menu-item a.menu-link:hover svg.menu-item-arrow path[fill] {
	fill: var(--e-global-color-primary);
}
svg.menu-item-arrow {
	margin-left: auto;
	width: 16px;
	min-width: 16px;
}
/**
* /Categories menu styles
*/
