 /* menu */
.menu {
	position: fixed;
	left: 45%;
	margin: 0;
	font-weight: 500;
	user-select: none;
	z-index: 200;
	will-change: top, bottom, transform;
	padding: 3rem 1rem 1rem;
	background: rgb(var(--n) / .5);
}

/* .menu.menu-bg-clear {
	box-shadow: 5px 5px 10px rgba(0,0,0,.1);
	color: rgb(var(--n) / 1);
	text-shadow: none;
	border-color: rgb(var(--b) / 1);
	padding: 3rem 1rem 1rem;
	border-radius: 0 0 .5rem .5rem;
} */

/* .menu.menu-bg-clear li {
	color: rgb(var(--n) / 1);
	text-shadow: none;
	border-color: rgb(var(--b) / 1);
} */

.menu .menu-root {
	display: flex;
	align-items: center;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.menu li {
	position: relative;
	display: flex;
	align-items: center;
	justify-items: center;
	padding: 0 .5rem;
	font-size: 1rem;
	font-weight: 600;
	color: rgb(var(--b) / 1);
	list-style: none;
	border-right: 1px solid rgb(var(--n-light) / 1);
}

.menu li:last-child {
	border-right: none;
}

.menu .menu-root > li:hover {
	cursor: pointer;
}

.menu li i {
	display: block;
	margin-top: 2px;
color: rgb(var(--n) / .75)!important;
	font-size: .8rem;	font-style: normal;
	color: rgb(var(--n) / .75)!important;
	font-size: .8rem;
}

.menu i {
	color: rgb(var(--n) / .75)!important;
	font-size: .8rem;
}

.menu i::before {
	content: ""!important;
}

.menu li:has(> ul)::after {
	content: "\e900";
	font-family: "icomoon"!important;
	font-size: 1rem;
	color: rgb(var(--c5) / 1);
	transition: transform .2s ease, top .2s ease;
	margin-left: .5rem;
}

.menu li.is-open:has(> ul)::after {
	top: 0;
	right: 0;
	transform: translateY(0) rotate(180deg);
}

.menu .menu-root li.is-open > ul {
	display: block!important;
	background: rgb(var(--c1) / 1);
}

.menu .menu-root > li > ul {
	position: absolute;
	top: calc(100% + 4px);
	left: 0;
	display: none;
	width: 175%!important;
	min-width: 240px;
	padding: 1rem;
	z-index: 100;
	list-style: none;
	
}

.menu .menu-root ul li {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: .5rem;
	color: rgb(var(--n) / 1);
	border-radius: 5px;
	border-right: none;
	background: rgb(var(--b) / .8);
	margin-top: 3px;
}

.menu .menu-root ul li:hover {
	background: rgb(var(--b) / 1);
}

.menu .menu-root ul li::before {
	content: "\e906";
	position: absolute;
	left: 0;
	top: 15px;
	margin-right: 1.5rem;
	font-family: "icomoon"!important;
	font-size: .75rem;
	color: rgb(var(--c5) / 1);
}

.menu .menu-root ul ul {
	position: static;
	display: none;
	width: 100%;
	margin-top: 4px;
	padding: 0;
	border-top: 1px solid rgb(var(--n) / .2);
	border-bottom: 1px solid rgb(var(--n) / .2);
	list-style: none!important;
}

.menu .menu-root ul ul li {
	padding: .5rem;
	list-style: none;
	background: rgb(var(--b) / 1);
	margin-top: 0;
}
.menu .menu-root ul ul li:hover {
	background: rgb(var(--b) / .75);
}

.menu li.language {
	display: flex;
	align-items: center;
	border-right: 1px solid rgb(var(--n-light) / 1);
}

.menu .language .lang-option {
	display: inline-block;
	margin-top: 0;
	font-weight: 900;
	color: rgb(var(--c1) / 1);
	text-decoration: none;
	text-shadow: none;
	cursor: pointer;
}

.menu .language {
	display: flex;
	align-items: center;
	gap: .45rem;
}

.menu .language .lang-option + .lang-option::before {
	content: "/";
	display: inline-block;
	margin-right: .45rem;
	color: rgb(var(--b) / .45);
	font-weight: 400;
}

.header-toggle {
	display: none;
}

.menu .site-search {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: auto;
	height: auto;
	border-right: none;
	overflow: visible;
	color: rgb(var(--c1-dark) / 1);
}

.menu .site-search:has(> ul)::after {
	content: none;
}

.menu .site-search::before {
	content: none;
}

.menu .site-search-toggle {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	margin: 0;
	padding: 0;
	cursor: pointer;
	text-decoration: none;
	background: none;
	border: 0;
}

.menu .site-search-toggle::before {
	content: "\e910";
	font-family: "icomoon"!important;
	font-size: 1rem;
	color: rgb(var(--c1) / 1);
	line-height: 1;
}

.menu .site-search input {
	position: absolute;
	top: calc(100% + .5rem);
	right: 0;
	left: auto;
	display: none;
	width: 27vw;
	height: 2.35rem;
	padding: .25rem 2.25rem .25rem 1rem;
	font-family: inherit;
	font-size: 1rem;
	color: rgb(var(--n) / 1);
	border-radius: .25rem;
	background: rgb(var(--b) / .8);
	border: 1px solid rgb(var(--b) / 1);
	outline: none;
	z-index: 151;
}

.menu .site-search.search-open input {
	display: block;
}

.menu .site-search input::placeholder {
	color: rgb(var(--b) / .75);
	opacity: 1;
}

.menu #site-search-results {
	position: absolute;
	top: calc(100% + 3.1rem);
	right: 0;
	left: auto;
	display: none;
	width: 27vw!important;
	max-height: 60vh;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior: contain;
	margin: 0;
	padding: 1rem;
	list-style: none;
	border-radius: 1rem;
	z-index: 150;
	background: rgb(var(--b) / 1);
}

.menu #site-search-results.active {
	display: block;
}

.menu #site-search-results li {
	display: block;
	padding: .75rem;
	cursor: pointer;
	color: rgb(var(--n) / 1);
	border: 0;
	border-radius: .5rem;
}

.menu #site-search-results li:hover {
	background: rgb(var(--b) / 1);
}

.menu #site-search-results strong,
.menu #site-search-results span,
.menu #site-search-results p {
	color: rgb(var(--n) / 1);
}

body.site-search-open {
	overflow: hidden;
}