/* -------------------------------------------------------------------------
   Nav Menu wrapper + layout
   ------------------------------------------------------------------------- */
.epl-nav-menu-wrapper {
	position: relative;
	width: 100%;
}

.epl-nav-menu__mobile-bar {
	display: none;
	align-items: center;
	width: 100%;
}

.epl-nav-menu__toggle {
	display: none;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	cursor: pointer;
	border: 0;
	background: transparent;
	padding: 0.5rem 0.75rem;
	line-height: 1;
}

.epl-nav-menu__toggle:focus {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

.epl-nav-menu__toggle-icon-wrap {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.epl-nav-menu__toggle-icon {
	font-size: 1.25em;
	display: inline-flex;
}
.epl-nav-menu__toggle-icon.e-font-icon-svg {
	width: 1em;
	height: 1em;
	display: block;
	fill: currentColor;
}

/* Multi-state toggle icons: normal visible by default; hover/active swap */
.epl-nav-menu__toggle-icon--hover,
.epl-nav-menu__toggle-icon--active {
	display: none;
}
.epl-toggle-has-hover-icon .epl-nav-menu__toggle:hover .epl-nav-menu__toggle-icon--normal {
	display: none;
}
.epl-toggle-has-hover-icon .epl-nav-menu__toggle:hover .epl-nav-menu__toggle-icon--hover {
	display: inline-flex;
}
.epl-nav-menu-wrapper--open.epl-toggle-has-active-icon .epl-nav-menu__toggle-icon--normal,
.epl-nav-menu-wrapper--open.epl-toggle-has-active-icon .epl-nav-menu__toggle-icon--hover {
	display: none;
}
.epl-nav-menu-wrapper--open.epl-toggle-has-active-icon .epl-nav-menu__toggle-icon--active {
	display: inline-flex;
}

.epl-nav-menu__toggle-label {
	font-size: inherit;
}

.epl-nav-menu__toggle-lines {
	display: inline-flex;
	flex-direction: column;
	gap: 4px;
	width: 22px;
}

.epl-nav-menu__toggle-lines span {
	display: block;
	height: 2px;
	background: currentColor;
	border-radius: 1px;
	transition: transform 0.2s ease, opacity 0.15s ease;
	transform-origin: center;
}

/* Horizontal root list */
.epl-nav-menu.epl-nav-menu--horizontal .epl-nav-menu__list {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
	padding: 0;
	gap: var(--epl-menu-gap, 1rem);
	align-items: center;
}

.epl-nav-menu.epl-nav-menu--vertical .epl-nav-menu__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.epl-nav-menu.epl-nav-menu--vertical .epl-nav-menu__list > li {
	margin: 0 0 0.35rem;
}

.epl-nav-menu a {
	text-decoration: none;
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	transition: color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

/* -------------------------------------------------------------------------
   Top-level menu divider (between items)
   ------------------------------------------------------------------------- */
.epl-nav-menu__list > .menu-item {
	position: relative;
}

.epl-nav-menu.epl-nav-menu--horizontal .epl-nav-menu__list > .menu-item:not(:last-child)::after {
	content: "";
	display: none;
	position: absolute;
	right: calc(var(--epl-menu-gap, 1rem) / -2);
	top: 50%;
	transform: translateY(-50%);
	border-right: var(--epl-divider-width, 1px) var(--epl-divider-style, solid) var(--epl-divider-color, currentColor);
	height: var(--epl-divider-height, 60%);
	pointer-events: none;
}

.epl-nav-menu.epl-nav-menu--vertical .epl-nav-menu__list > .menu-item:not(:last-child)::after {
	content: "";
	display: none;
	border-bottom: var(--epl-divider-width, 1px) var(--epl-divider-style, solid) var(--epl-divider-color, currentColor);
	width: var(--epl-divider-height, 60%);
	margin: 0.35rem auto;
	pointer-events: none;
}

/* -------------------------------------------------------------------------
   Pointer: underline / overline / double / framed / background
   ------------------------------------------------------------------------- */
.epl-nav-menu.epl-pointer-underline .epl-nav-menu__list > .menu-item > a::after,
.epl-nav-menu.epl-pointer-overline .epl-nav-menu__list > .menu-item > a::after,
.epl-nav-menu.epl-pointer-double .epl-nav-menu__list > .menu-item > a::after,
.epl-nav-menu.epl-pointer-double .epl-nav-menu__list > .menu-item > a::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	height: var(--epl-pointer-width, 2px);
	background-color: var(--epl-pointer-color, currentColor);
	transform-origin: center;
	transition: transform 0.25s ease, opacity 0.25s ease;
	pointer-events: none;
}

.epl-nav-menu.epl-pointer-underline .epl-nav-menu__list > .menu-item > a::after {
	bottom: 0;
}

.epl-nav-menu.epl-pointer-overline .epl-nav-menu__list > .menu-item > a::after {
	top: 0;
}

.epl-nav-menu.epl-pointer-double .epl-nav-menu__list > .menu-item > a::before {
	top: 0;
}
.epl-nav-menu.epl-pointer-double .epl-nav-menu__list > .menu-item > a::after {
	bottom: 0;
}

/* Animations: default slide (scaleX) */
.epl-nav-menu.epl-pointer-anim-slide.epl-pointer-underline .epl-nav-menu__list > .menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-slide.epl-pointer-overline .epl-nav-menu__list > .menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-slide.epl-pointer-double .epl-nav-menu__list > .menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-slide.epl-pointer-double .epl-nav-menu__list > .menu-item > a::before {
	transform: scaleX(0);
	opacity: 1;
}
.epl-nav-menu.epl-pointer-anim-slide .epl-nav-menu__list > .menu-item > a:hover::after,
.epl-nav-menu.epl-pointer-anim-slide .epl-nav-menu__list > .menu-item > a:hover::before,
.epl-nav-menu.epl-pointer-anim-slide .epl-nav-menu__list > .current-menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-slide .epl-nav-menu__list > .current-menu-ancestor > a::after,
.epl-nav-menu.epl-pointer-anim-slide.epl-pointer-double .epl-nav-menu__list > .current-menu-item > a::before,
.epl-nav-menu.epl-pointer-anim-slide.epl-pointer-double .epl-nav-menu__list > .current-menu-ancestor > a::before {
	transform: scaleX(1);
}

.epl-nav-menu.epl-pointer-anim-fade .epl-nav-menu__list > .menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-fade .epl-nav-menu__list > .menu-item > a::before {
	transform: scaleX(1);
	opacity: 0;
}
.epl-nav-menu.epl-pointer-anim-fade .epl-nav-menu__list > .menu-item > a:hover::after,
.epl-nav-menu.epl-pointer-anim-fade .epl-nav-menu__list > .menu-item > a:hover::before,
.epl-nav-menu.epl-pointer-anim-fade .epl-nav-menu__list > .current-menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-fade .epl-nav-menu__list > .current-menu-ancestor > a::after,
.epl-nav-menu.epl-pointer-anim-fade.epl-pointer-double .epl-nav-menu__list > .current-menu-item > a::before,
.epl-nav-menu.epl-pointer-anim-fade.epl-pointer-double .epl-nav-menu__list > .current-menu-ancestor > a::before {
	opacity: 1;
}

.epl-nav-menu.epl-pointer-anim-grow .epl-nav-menu__list > .menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-grow .epl-nav-menu__list > .menu-item > a::before {
	transform: scaleX(0.3);
}
.epl-nav-menu.epl-pointer-anim-grow .epl-nav-menu__list > .menu-item > a:hover::after,
.epl-nav-menu.epl-pointer-anim-grow .epl-nav-menu__list > .menu-item > a:hover::before,
.epl-nav-menu.epl-pointer-anim-grow .epl-nav-menu__list > .current-menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-grow .epl-nav-menu__list > .current-menu-ancestor > a::after,
.epl-nav-menu.epl-pointer-anim-grow.epl-pointer-double .epl-nav-menu__list > .current-menu-item > a::before,
.epl-nav-menu.epl-pointer-anim-grow.epl-pointer-double .epl-nav-menu__list > .current-menu-ancestor > a::before {
	transform: scaleX(1);
}

/* Animation: none — pointer always visible */
.epl-nav-menu.epl-pointer-anim-none.epl-pointer-underline .epl-nav-menu__list > .menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-none.epl-pointer-overline .epl-nav-menu__list > .menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-none.epl-pointer-double .epl-nav-menu__list > .menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-none.epl-pointer-double .epl-nav-menu__list > .menu-item > a::before {
	transform: scaleX(1);
	opacity: 1;
}

/* Animation: drop-in (slides down from above) */
.epl-nav-menu.epl-pointer-anim-drop-in.epl-pointer-underline .epl-nav-menu__list > .menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-drop-in.epl-pointer-overline .epl-nav-menu__list > .menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-drop-in.epl-pointer-double .epl-nav-menu__list > .menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-drop-in.epl-pointer-double .epl-nav-menu__list > .menu-item > a::before {
	transform: translateY(-100%) scaleX(1);
	opacity: 0;
}
.epl-nav-menu.epl-pointer-anim-drop-in .epl-nav-menu__list > .menu-item > a:hover::after,
.epl-nav-menu.epl-pointer-anim-drop-in .epl-nav-menu__list > .menu-item > a:hover::before,
.epl-nav-menu.epl-pointer-anim-drop-in .epl-nav-menu__list > .current-menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-drop-in .epl-nav-menu__list > .current-menu-ancestor > a::after,
.epl-nav-menu.epl-pointer-anim-drop-in.epl-pointer-double .epl-nav-menu__list > .current-menu-item > a::before,
.epl-nav-menu.epl-pointer-anim-drop-in.epl-pointer-double .epl-nav-menu__list > .current-menu-ancestor > a::before {
	transform: translateY(0) scaleX(1);
	opacity: 1;
}

/* Animation: drop-out (slides up from below) */
.epl-nav-menu.epl-pointer-anim-drop-out.epl-pointer-underline .epl-nav-menu__list > .menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-drop-out.epl-pointer-overline .epl-nav-menu__list > .menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-drop-out.epl-pointer-double .epl-nav-menu__list > .menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-drop-out.epl-pointer-double .epl-nav-menu__list > .menu-item > a::before {
	transform: translateY(100%) scaleX(1);
	opacity: 0;
}
.epl-nav-menu.epl-pointer-anim-drop-out .epl-nav-menu__list > .menu-item > a:hover::after,
.epl-nav-menu.epl-pointer-anim-drop-out .epl-nav-menu__list > .menu-item > a:hover::before,
.epl-nav-menu.epl-pointer-anim-drop-out .epl-nav-menu__list > .current-menu-item > a::after,
.epl-nav-menu.epl-pointer-anim-drop-out .epl-nav-menu__list > .current-menu-ancestor > a::after,
.epl-nav-menu.epl-pointer-anim-drop-out.epl-pointer-double .epl-nav-menu__list > .current-menu-item > a::before,
.epl-nav-menu.epl-pointer-anim-drop-out.epl-pointer-double .epl-nav-menu__list > .current-menu-ancestor > a::before {
	transform: translateY(0) scaleX(1);
	opacity: 1;
}

/* Pointer: text — animates the link itself instead of a pseudo-element */
.epl-nav-menu.epl-pointer-text .epl-nav-menu__list > .menu-item > a {
	display: inline-flex;
	transition: transform 0.25s ease, color 0.25s ease;
	transform-origin: center;
	will-change: transform;
}
.epl-nav-menu.epl-pointer-text .epl-nav-menu__list > .menu-item > a:hover,
.epl-nav-menu.epl-pointer-text .epl-nav-menu__list > .current-menu-item > a,
.epl-nav-menu.epl-pointer-text .epl-nav-menu__list > .current-menu-ancestor > a {
	color: var(--epl-pointer-color, currentColor);
}
.epl-nav-menu.epl-pointer-text.epl-text-anim-grow .epl-nav-menu__list > .menu-item > a:hover,
.epl-nav-menu.epl-pointer-text.epl-text-anim-grow .epl-nav-menu__list > .current-menu-item > a,
.epl-nav-menu.epl-pointer-text.epl-text-anim-grow .epl-nav-menu__list > .current-menu-ancestor > a {
	transform: scale(1.15);
}
.epl-nav-menu.epl-pointer-text.epl-text-anim-shrink .epl-nav-menu__list > .menu-item > a:hover,
.epl-nav-menu.epl-pointer-text.epl-text-anim-shrink .epl-nav-menu__list > .current-menu-item > a,
.epl-nav-menu.epl-pointer-text.epl-text-anim-shrink .epl-nav-menu__list > .current-menu-ancestor > a {
	transform: scale(0.9);
}
.epl-nav-menu.epl-pointer-text.epl-text-anim-sink .epl-nav-menu__list > .menu-item > a:hover,
.epl-nav-menu.epl-pointer-text.epl-text-anim-sink .epl-nav-menu__list > .current-menu-item > a,
.epl-nav-menu.epl-pointer-text.epl-text-anim-sink .epl-nav-menu__list > .current-menu-ancestor > a {
	transform: translateY(4px);
}
.epl-nav-menu.epl-pointer-text.epl-text-anim-float .epl-nav-menu__list > .menu-item > a:hover,
.epl-nav-menu.epl-pointer-text.epl-text-anim-float .epl-nav-menu__list > .current-menu-item > a,
.epl-nav-menu.epl-pointer-text.epl-text-anim-float .epl-nav-menu__list > .current-menu-ancestor > a {
	transform: translateY(-4px);
}
.epl-nav-menu.epl-pointer-text.epl-text-anim-skew .epl-nav-menu__list > .menu-item > a:hover,
.epl-nav-menu.epl-pointer-text.epl-text-anim-skew .epl-nav-menu__list > .current-menu-item > a,
.epl-nav-menu.epl-pointer-text.epl-text-anim-skew .epl-nav-menu__list > .current-menu-ancestor > a {
	transform: skew(-10deg);
}
.epl-nav-menu.epl-pointer-text.epl-text-anim-rotate .epl-nav-menu__list > .menu-item > a:hover,
.epl-nav-menu.epl-pointer-text.epl-text-anim-rotate .epl-nav-menu__list > .current-menu-item > a,
.epl-nav-menu.epl-pointer-text.epl-text-anim-rotate .epl-nav-menu__list > .current-menu-ancestor > a {
	transform: rotate(6deg);
}

.epl-nav-menu.epl-pointer-framed .epl-nav-menu__list > .menu-item > a {
	border: var(--epl-pointer-width, 2px) solid transparent;
	padding: 0.25em 0.5em;
	border-radius: var(--epl-item-radius, 0);
}
.epl-nav-menu.epl-pointer-framed .epl-nav-menu__list > .menu-item > a:hover,
.epl-nav-menu.epl-pointer-framed .epl-nav-menu__list > .current-menu-item > a,
.epl-nav-menu.epl-pointer-framed .epl-nav-menu__list > .current-menu-ancestor > a {
	border-color: var(--epl-pointer-color, currentColor);
}

.epl-nav-menu.epl-pointer-background .epl-nav-menu__list > .menu-item > a {
	border-radius: var(--epl-item-radius, 0);
}
.epl-nav-menu.epl-pointer-background .epl-nav-menu__list > .menu-item > a:hover,
.epl-nav-menu.epl-pointer-background .epl-nav-menu__list > .current-menu-item > a,
.epl-nav-menu.epl-pointer-background .epl-nav-menu__list > .current-menu-ancestor > a {
	background-color: var(--epl-pointer-color, rgba(0, 0, 0, 0.06));
}

/* -------------------------------------------------------------------------
   Submenu indicator (injected next to title — avoids ::after pointer clash)
   ------------------------------------------------------------------------- */
.epl-nav-menu .epl-submenu-indicator {
	display: inline-flex;
	align-items: center;
	margin-left: 0.35em;
	opacity: 0.85;
	font-size: 0.85em;
	line-height: 1;
	vertical-align: middle;
}

.epl-nav-menu .epl-submenu-indicator i {
	display: inline-block;
}

.epl-nav-menu .epl-submenu-indicator__glyph {
	display: inline-block;
	line-height: 1;
}

/* Prefer FA icon when available, but keep glyph fallback always visible. */
.epl-nav-menu .epl-submenu-indicator i + .epl-submenu-indicator__glyph,
.epl-nav-menu .epl-submenu-indicator .epl-submenu-indicator__glyph + i {
	margin-left: 0;
}
.epl-nav-menu .epl-submenu-indicator i {
	display: none;
}

.epl-nav-menu.epl-submenu-icon-plus .epl-submenu-indicator i {
	transition: transform 0.2s ease;
}

.epl-nav-menu.epl-submenu-icon-plus .epl-submenu-indicator__glyph {
	transition: transform 0.2s ease;
}

/* -------------------------------------------------------------------------
   Dropdown / sub-menu (desktop)
   ------------------------------------------------------------------------- */
.epl-nav-menu .sub-menu {
	list-style: none;
	margin: 0;
	padding: 0.35rem 0;
	min-width: 12rem;
	position: absolute;
	left: 0;
	top: 100%;
	z-index: 999;
	opacity: 0;
	visibility: hidden;
	transform: translateY(6px);
	transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
	box-shadow: 0 4px 18px rgba(0, 0, 0, 0.08);
}

/* Dropdown effects */
.epl-nav-menu-wrapper[data-epl-dropdown-effect="none"] .epl-nav-menu .sub-menu {
	transition: none;
	transform: none;
}

.epl-nav-menu-wrapper[data-epl-dropdown-effect="slide"] .epl-nav-menu .sub-menu {
	transform: translateY(12px);
}

.epl-nav-menu-wrapper[data-epl-dropdown-effect="zoom"] .epl-nav-menu .sub-menu {
	transform: translateY(4px) scale(0.96);
	transform-origin: top;
}

.epl-nav-menu.epl-nav-menu--horizontal .menu-item-has-children {
	position: relative;
}

.epl-nav-menu.epl-nav-menu--horizontal .menu-item-has-children:hover > .sub-menu,
.epl-nav-menu.epl-nav-menu--horizontal .menu-item-has-children:focus-within > .sub-menu {
	display: block;
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

/* Desktop click trigger mode */
.epl-nav-menu-wrapper[data-epl-submenu-trigger="click"] .epl-nav-menu.epl-nav-menu--horizontal .menu-item-has-children:hover > .sub-menu,
.epl-nav-menu-wrapper[data-epl-submenu-trigger="click"] .epl-nav-menu.epl-nav-menu--horizontal .menu-item-has-children:focus-within > .sub-menu {
	display: none;
	opacity: 0;
	visibility: hidden;
	transform: translateY(6px);
}

.epl-nav-menu-wrapper[data-epl-submenu-trigger="click"] .epl-nav-menu.epl-nav-menu--horizontal .menu-item-has-children.epl-submenu-open > .sub-menu {
	display: block;
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.epl-nav-menu .sub-menu .menu-item {
	margin: 0;
}
.epl-nav-menu .sub-menu a {
	display: block;
	padding: 0.45em 1em;
	white-space: nowrap;
}

.epl-nav-menu.epl-nav-menu--vertical .sub-menu {
	position: static;
	opacity: 1;
	visibility: visible;
	transform: none;
	box-shadow: none;
	padding-left: 1rem;
	display: none;
}
.epl-nav-menu.epl-nav-menu--vertical .menu-item-has-children:hover > .sub-menu,
.epl-nav-menu.epl-nav-menu--vertical .menu-item-has-children:focus-within > .sub-menu {
	display: block;
}

/* Nested horizontal flyout */
.epl-nav-menu .sub-menu .menu-item-has-children > .sub-menu {
	top: 0;
	left: 100%;
	margin-left: 2px;
}

/* -------------------------------------------------------------------------
   Mobile
   ------------------------------------------------------------------------- */
.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile .epl-nav-menu__mobile-bar {
	display: flex;
}

/* Toggle must be visible in mobile mode (base rule is display:none for desktop). */
.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile .epl-nav-menu__toggle {
	display: inline-flex;
	min-width: 44px;
	min-height: 44px;
}

.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile .epl-nav-menu {
	display: none;
	width: 100%;
}

.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile.epl-nav-menu-wrapper--open .epl-nav-menu {
	display: block;
	position: absolute;
	left: 0;
	top: 100%;
	z-index: 1000;
	margin-top: 0.5rem;
	width: max-content;
	min-width: 220px;
}

/* Burger → close icon when panel is open (mobile) */
.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile.epl-nav-menu-wrapper--open .epl-nav-menu__toggle-lines span:nth-child(1) {
	transform: translateY(6px) rotate(45deg);
}
.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile.epl-nav-menu-wrapper--open .epl-nav-menu__toggle-lines span:nth-child(2) {
	opacity: 0;
	transform: scaleX(0);
}
.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile.epl-nav-menu-wrapper--open .epl-nav-menu__toggle-lines span:nth-child(3) {
	transform: translateY(-6px) rotate(-45deg);
}

.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile.epl-toggle-align-flex-start .epl-nav-menu__mobile-bar {
	justify-content: flex-start;
}
.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile.epl-toggle-align-center .epl-nav-menu__mobile-bar {
	justify-content: center;
}
.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile.epl-toggle-align-flex-end .epl-nav-menu__mobile-bar {
	justify-content: flex-end;
}

.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile.epl-nav-full-width .epl-nav-menu.epl-nav-menu--open {
	position: absolute;
	left: 0;
	right: 0;
	top: 100%;
	z-index: 1000;
	margin-top: 0.5rem;
	width: 100%;
	min-width: 0;
}

.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile .epl-nav-menu.epl-nav-menu--horizontal .epl-nav-menu__list,
.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile .epl-nav-menu.epl-nav-menu--vertical .epl-nav-menu__list {
	flex-direction: column;
	align-items: stretch !important;
	justify-content: flex-start !important;
	gap: 0;
}

.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile .epl-nav-menu .sub-menu {
	position: static;
	opacity: 1;
	visibility: visible;
	transform: none;
	box-shadow: none;
	display: none;
	padding-left: 1rem;
}
.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile .epl-nav-menu .menu-item-has-children.epl-submenu-open > .sub-menu {
	display: block;
	opacity: 1;
	visibility: visible;
	transform: none;
}

.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile .epl-nav-menu a {
	width: 100%;
	justify-content: space-between;
}

.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile .epl-nav-menu .epl-submenu-indicator {
	margin-left: auto;
	padding-left: 0.5rem;
	font-size: 0.7em;
	transition: transform 0.2s ease;
}

.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile .menu-item-has-children.epl-submenu-open > a .epl-submenu-indicator i {
	transform: rotate(180deg);
}

.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile .menu-item-has-children.epl-submenu-open > a .epl-submenu-indicator .epl-submenu-indicator__glyph {
	transform: rotate(180deg);
}

.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile .epl-nav-menu.epl-submenu-icon-plus .menu-item-has-children.epl-submenu-open > a .epl-submenu-indicator i {
	transform: rotate(45deg);
}

.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile .epl-nav-menu.epl-submenu-icon-plus .menu-item-has-children.epl-submenu-open > a .epl-submenu-indicator .epl-submenu-indicator__glyph {
	transform: rotate(45deg);
}

/* Long mobile menus: scroll inside panel */
.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile.epl-nav-menu-wrapper--open .epl-nav-menu {
	max-height: var(--epl-mobile-menu-max-height, 70vh);
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile .epl-nav-menu__list > .menu-item > a {
	box-sizing: border-box;
	min-height: 44px;
	align-items: center;
}

/* Toggle hidden mode: panel always visible in flow (no hamburger) */
.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile.epl-nav-no-toggle .epl-nav-menu__mobile-bar {
	display: none;
}
.epl-nav-menu-wrapper.epl-nav-menu-wrapper--mobile.epl-nav-no-toggle .epl-nav-menu {
	display: block;
	position: static;
	width: 100%;
	margin-top: 0;
	box-shadow: none;
}

/* Last menu item: button style */
.epl-nav-menu .epl-menu-item-last--button > a {
	padding: 0.65em 1.1em;
	border-radius: 4px;
	background: #5dc472;
	color: #fff;
	font-weight: 600;
}
