.fl-menu ul,
.fl-menu li{
	list-style: none;
	margin: 0;
	padding: 0;
}
.fl-menu .menu:before,
.fl-menu .menu:after{
	content: '';
	display: table;
	clear: both;
}

/* Horizontal menus */
.fl-menu-horizontal {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
}
.fl-menu li{
	position: relative;
}
.fl-menu a{
	display: block;
	padding: 10px;
	text-decoration: none;
}
.fl-menu a:hover{
	text-decoration: none;
}
.fl-menu .sub-menu{
	min-width: 220px;
}

/* Expanded menus */
.fl-module[data-node] .fl-menu .fl-menu-expanded .sub-menu {
	background-color: transparent;
	-webkit-box-shadow: none;
	-ms-box-shadow: none;
	box-shadow: none;
}

/* Submenus */
.fl-menu .fl-has-submenu:focus,
.fl-menu .fl-has-submenu .sub-menu:focus,
.fl-menu .fl-has-submenu-container:focus {
	outline: 0;
}
.fl-menu .fl-has-submenu-container:has(span.fl-menu-toggle) {
	position: relative;
}
.fl-menu .fl-has-submenu-container:has(button.fl-menu-toggle) {
	display: grid;
	grid-template-columns: 1fr 40px;
}

/* Submenu - accordion, expanded */
.fl-menu .fl-menu-accordion .fl-has-submenu > .sub-menu{
	display: none;
}
.fl-menu .fl-menu-accordion .fl-has-submenu.fl-active .hide-heading > .sub-menu {
	box-shadow: none;
	display: block !important;
}

/* Toggle - General */
.fl-menu span.fl-menu-toggle{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	height: 100%;
	cursor: pointer;
}
.fl-menu button.fl-menu-toggle{
	all: unset;
	position: relative;
	cursor: pointer;
}
.fl-menu .fl-toggle-arrows .fl-menu-toggle:before{
	border-color: #333;
}
.fl-menu .fl-menu-expanded .fl-menu-toggle{
	display: none;
}

/* Mobile menu - hamburger icon */
.fl-menu .fl-menu-mobile-toggle {
	position: relative;
	padding: 8px;
	background-color: transparent;
	border: none;
	color: #333;
	border-radius: 0;
	cursor: pointer;
}
.fl-menu .fl-menu-mobile-toggle:focus-visible,
.fl-menu-mobile-close:focus-visible,
.fl-menu .fl-menu-toggle:focus-visible {
	outline: 2px auto Highlight;
	outline: 2px auto -webkit-focus-ring-color;
}
.fl-menu .fl-menu-mobile-toggle.text{
	width: 100%;
	text-align: center;
}
.fl-menu .fl-menu-mobile-toggle.hamburger .fl-menu-mobile-toggle-label,
.fl-menu .fl-menu-mobile-toggle.hamburger-label .fl-menu-mobile-toggle-label{
	display: inline-block;
	margin-left: 10px;
	vertical-align: middle;
}
.fl-menu .fl-menu-mobile-toggle.hamburger .svg-container,
.fl-menu .fl-menu-mobile-toggle.hamburger-label .svg-container{
	display: inline-block;
	position: relative;
	width: 1.4em;
	height: 1.4em;
	vertical-align: middle;
}
.fl-menu .fl-menu-mobile-toggle.hamburger .hamburger-menu,
.fl-menu .fl-menu-mobile-toggle.hamburger-label .hamburger-menu{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.fl-menu .fl-menu-mobile-toggle.hamburger .hamburger-menu rect,
.fl-menu .fl-menu-mobile-toggle.hamburger-label .hamburger-menu rect{
	fill: currentColor;
}

/* Mega menu general */
li.mega-menu .hide-heading > a,
li.mega-menu .hide-heading > .fl-has-submenu-container,
li.mega-menu-disabled .hide-heading > a,
li.mega-menu-disabled .hide-heading > .fl-has-submenu-container {
	display: none;
}

/* Mega menu for horizontal menus */
ul.fl-menu-horizontal li.mega-menu {
	position: static;
}
ul.fl-menu-horizontal li.mega-menu > ul.sub-menu {
	top: inherit !important;
	left: 0 !important;
	right: 0 !important;
	width: 100%;
}
ul.fl-menu-horizontal li.mega-menu.fl-has-submenu:hover > ul.sub-menu,
ul.fl-menu-horizontal li.mega-menu.fl-has-submenu.focus > ul.sub-menu {
	display: flex !important;
}
ul.fl-menu-horizontal li.mega-menu > ul.sub-menu li {
	border-color: transparent;
}
ul.fl-menu-horizontal li.mega-menu > ul.sub-menu > li {
	width: 100%;
}
ul.fl-menu-horizontal li.mega-menu > ul.sub-menu > li > .fl-has-submenu-container a {
	font-weight: bold;
}
ul.fl-menu-horizontal li.mega-menu > ul.sub-menu > li > .fl-has-submenu-container a:hover {
	background: transparent;
}
ul.fl-menu-horizontal li.mega-menu > ul.sub-menu .fl-menu-toggle {
	display: none;
}
ul.fl-menu-horizontal li.mega-menu > ul.sub-menu ul.sub-menu {
	background: transparent;
	-webkit-box-shadow: none;
	-ms-box-shadow: none;
	box-shadow: none;
	display: block;
	min-width: 0;
	opacity: 1;
	padding: 0;
	position: static;
	visibility: visible;
}

/* Mobile menu - below row clone */
:where(.fl-col-group-medium-reversed, .fl-col-group-responsive-reversed, .fl-col-group-equal-height.fl-col-group-custom-width) > .fl-menu-mobile-clone {
	flex: 1 1 100%;
}
.fl-menu-mobile-clone {
	clear: both;
}
.fl-menu-mobile-clone .fl-menu .menu {
	float: none !important;
}

/* Mobile menu - Flyout */
.fl-menu-mobile-flyout .fl-menu-mobile-close,
.fl-menu-mobile-flyout .fl-menu-mobile-close:hover,
.fl-menu-mobile-flyout .fl-menu-mobile-close:focus {
	background: none;
	border: 0 none;
	color: inherit;
	font-size: 18px;
	padding: 10px 15px;
	margin: 5px 0;
	cursor: pointer;
}