/* 1.19.2: mobile menu (both editions). WordPress's overlay menu, restyled:
   left-aligned full-width rows, section titles as labels (not links), the
   Book and Account buttons first, the menu button at the far right. */
:root { --ifl-nav-accent: #FFC93C; --ifl-nav-line: rgba(255,255,255,.12); }

@media (max-width: 599px) {
	/* Header: logo left, then EN · FR · ES, then the menu button at the edge. */
	header.wp-block-template-part .wp-block-navigation { order: 3; margin-left: 4px; }
	header.wp-block-template-part .ifl-lang { order: 2; margin-left: auto; }
	header.wp-block-template-part .wp-block-navigation__responsive-container-open {
		width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center;
		border: 1px solid var(--ifl-nav-line); border-radius: 12px; padding: 0;
	}
	header.wp-block-template-part .wp-block-navigation__responsive-container-open svg { width: 26px; height: 26px; }
}

/* ---- the open menu ---- */
.wp-block-navigation__responsive-container.is-menu-open { padding: 0 !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog { margin-top: 0 !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
	top: 12px !important; right: 12px !important; width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center;
	border: 1px solid var(--ifl-nav-line); border-radius: 12px;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close svg { width: 26px; height: 26px; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	padding: 72px 20px 40px !important; align-items: stretch !important; box-sizing: border-box; width: 100%;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	align-items: stretch !important; justify-content: flex-start !important; gap: 0 !important; width: 100%;
	display: flex !important; flex-direction: column;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	align-items: stretch !important; width: 100%; text-align: left;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	display: block; width: 100%; box-sizing: border-box; font-size: 1.1rem !important; font-weight: 600; line-height: 1.3;
	padding: 13px 4px !important; text-decoration: none;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:active { color: var(--ifl-nav-accent) !important; }

/* Sections: the title is a small label, not a link, and its items sit under it with dividers. */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu { margin: 18px 0 0 !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu > .wp-block-navigation-item__content {
	pointer-events: none; font-size: .78rem !important; font-weight: 800 !important; letter-spacing: .09em; text-transform: uppercase;
	opacity: .6; padding: 6px 4px !important; outline: none !important; border: 0 !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu__toggle,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-icon { display: none !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	padding: 0 !important; margin: 0 !important; gap: 0 !important; width: 100% !important; min-width: 0 !important;
	align-items: stretch !important; border-top: 1px solid var(--ifl-nav-line) !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item { border-bottom: 1px solid var(--ifl-nav-line); }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 14px 4px !important; }
.wp-block-navigation__responsive-container.is-menu-open .current-menu-item > .wp-block-navigation-item__content { color: var(--ifl-nav-accent) !important; }

/* Book and Account first, as two full-width buttons. */
.wp-block-navigation__responsive-container.is-menu-open .ifl-nav-cta { order: -2; }
.wp-block-navigation__responsive-container.is-menu-open .improv-core-account-link { order: -1; margin-top: 10px; }
.wp-block-navigation__responsive-container.is-menu-open .ifl-nav-cta > .wp-block-navigation-item__content,
.wp-block-navigation__responsive-container.is-menu-open .improv-core-account-link > .wp-block-navigation-item__content {
	text-align: center; border-radius: 999px !important; padding: 13px 18px !important; font-size: 1.05rem !important;
}
.wp-block-navigation__responsive-container.is-menu-open .improv-core-account-link > .wp-block-navigation-item__content { border: 1.5px solid var(--ifl-nav-line); }
