.products-wrapper {
	position: relative;
	width: 320px;
  	margin-right: auto;
  	align-self: center;
}
.products-wrapper.is-active::before {
  content: '';
  position: fixed;
  left: 0;
  width: 100vw;
  height: var(--full-height, 100vh);
  z-index: 1;
  background-color: #252a3d59 !important;
  backdrop-filter: blur(1px);
}
/* ----Products button---- */
.products-button {
	position: relative;
	display: flex;
	width: 100%;
	align-items: center;
	gap: 20px;
	padding: 10px 20px;
	border: none;
	background-color: #ffc34b;
	font-size: 16px;
	cursor: pointer;
	color: #222c47;
	z-index: 1;
}
.products-button:hover .hamburger,
.products-button:hover span {
	opacity: 0.7;
}
.products-button span {
	transition: opacity 0.15s linear;
}
.products-button .hamburger {
	position: relative;
	top: 2px;
	display: inline-block;
	transition-property: opacity, filter;
	transition-duration: 0.15s;
	transition-timing-function: linear;
	font: inherit;
	color: inherit;
	text-transform: none;
	background-color: transparent;
	border: 0;
	margin: 0;
	overflow: visible; 
}
.products-button .hamburger:hover {
	opacity: 0.7; 
}
.is-active .products-button .hamburger:hover {
	opacity: 0.7; 
}
.is-active .products-button .hamburger .hamburger-inner,
.is-active .products-button .hamburger .hamburger-inner::before,
.is-active .products-button .hamburger .hamburger-inner::after {
	background-color: currentColor;
}
.products-button .hamburger-box {
	width: 1.2em;
	height: 12px;
	display: inline-block;
	position: relative; 
}
.products-button .hamburger-inner {
	display: block;
	top: 50%;
	margin-top: -2px; 
}
.products-button .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
	width: 1.2em;
	height: 2px;
	background-color: currentColor;
	border-radius: 1px;
	position: absolute;
	transition-property: transform;
	transition-duration: 0.15s;
	transition-timing-function: ease; 
}
.products-button .hamburger-inner::before, .hamburger-inner::after {
	content: "";
	display: block; 
}
.products-button .hamburger-inner::before {
	top: -6px; 
}
.products-button .hamburger-inner::after {
	bottom: -6px; 
}
.products-button .hamburger--squeeze .hamburger-inner {
	transition-duration: 0.075s;
	transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); 
}
.products-button .hamburger--squeeze .hamburger-inner::before {
	transition: top 0.075s 0.12s ease, opacity 0.075s ease; 
}
.products-button .hamburger--squeeze .hamburger-inner::after {
	transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19); 
}
.is-active .products-button .hamburger--squeeze .hamburger-inner {
	transform: rotate(45deg);
	transition-delay: 0.12s;
	transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); 
}
.is-active .products-button .hamburger--squeeze .hamburger-inner::before {
	top: 0;
	opacity: 0;
	transition: top 0.075s ease, opacity 0.075s 0.12s ease; 
}
.is-active .products-button .hamburger--squeeze .hamburger-inner::after {
	bottom: 0;
	transform: rotate(-90deg);
	transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); 
}


/* ----Products menu---- */
.products-menu {
	position: relative;
	z-index: 1;
}
.products-menu__first-level-list {
	position: absolute;
	display: none;
	opacity: 0;
	pointer-events: none;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	list-style: none;
	background-color: #fff;
	transition: opacity 0.1s ease-in-out;

	max-height: calc(100vh - var(--dropdown-1st-lvl-top, 0px) - 20px);
}
.is-active .products-button ~ .products-menu .products-menu__first-level-list {
	opacity: 1;
	pointer-events: auto;
	display: block;
}

.products-menu__nth-level-list-wrapper {
	position: absolute;
	top: 0;
	left: 100%;
	display: none;
	/* opacity: 0;
	pointer-events: none; */
	width: auto;
	max-width: 320px;
	height: 100%;
  	max-height: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	list-style: none;
	background-color: #fff;
	transition: opacity 0.1s ease-in-out;
}

.products-menu__nth-level-list {
	position: static;
	height: 100%;
  	max-height: 100%;
  	overflow-y: auto;
}

/* Hover scrollbar problem */
.products-menu__nth-level-list::after {
	content: '';
	display: block;
	width: 30px;
	height: 100%;
	background-color: transparent;
	position: absolute;
	top: 0;
	left: -15px;
	z-index: 100;
}

.products-menu__item {
	position: static !important;
	display: flex;
  	align-items: center;
	transition: background-color 0.1s ease-in-out;
	float: none !important;
}
.products-menu__item:hover > a {
	background-color: #ebebeb !important;
}
.products-menu__item a,
.products-menu__item.has-submenu > a {
	display: flex !important;
	align-items: center;
	width: 100%;
	padding: 8px 30px 8px 20px !important;
	color: #222c47 !important;
	text-decoration: none !important;
	overflow: hidden;
	font-size: 16px !important;
	line-height: 1.1 !important;
}

.products-menu__item a > span,
.products-menu__item.has-submenu > a > span {
	display: inline-block;
	width: 100%;
	white-space: nowrap;
  	text-overflow: ellipsis;
  	overflow: hidden;
}

.products-menu__item.has-submenu > a::after {
	content: "";
	--arrow-color: #a7a7a7;
	width: calc(1em / 2);;
	aspect-ratio: 1 / 1;
	margin-left: calc(1em / -2);
  	transform: translateX(calc((1em / 2) + 8px)) rotate(-45deg);
	border-right: 1px solid var(--arrow-color);
	border-bottom: 1px solid var(--arrow-color);
	transition: border-color 0.1s ease-in-out;
}
.products-menu__item.has-submenu:hover > a::after {
	--arrow-color: #222c47;
}

.products-menu__item.has-submenu:hover > .products-menu__nth-level-list-wrapper {
	opacity: 1;
	pointer-events: auto;
	display: block;
}