/* SoutienSchool — icônes menu vertical uniquement.
 * Ne pas toucher position/display des .popup (Porto gère les sous-menus).
 */

.porto-home-sidebar,
.left-sidebar.porto-home-sidebar {
	position: relative;
	z-index: 30;
	overflow: visible;
}

.porto-home-sidebar .sidebar-menu-wrap,
.porto-home-sidebar .widget_sidebar_menu,
.left-sidebar.porto-home-sidebar .sidebar-menu-wrap,
.left-sidebar.porto-home-sidebar .widget_sidebar_menu {
	overflow: visible;
}

.porto-home-sidebar .sidebar-menu > li.menu-item.has-sub:hover,
.porto-home-sidebar .sidebar-menu > li.menu-item.has-sub.open,
.left-sidebar .sidebar-menu > li.menu-item.has-sub:hover,
.left-sidebar .sidebar-menu > li.menu-item.has-sub.open {
	z-index: 40;
}

.porto-home-sidebar .sidebar-menu > li.menu-item .popup,
.left-sidebar .sidebar-menu > li.menu-item .popup {
	z-index: 10050 !important;
}

.porto-home-sidebar .sidebar-menu > li.menu-item > a,
.left-sidebar .sidebar-menu > li.menu-item > a {
	display: flex;
	align-items: center;
	gap: 0.65rem;
}

.porto-home-sidebar .sidebar-menu > li.menu-item > a > i,
.left-sidebar .sidebar-menu > li.menu-item > a > i {
	width: 1.15em;
	flex: 0 0 auto;
	text-align: center;
	font-size: 1.05em;
	opacity: 0.92;
	color: #235af3;
}

.porto-home-sidebar .sidebar-menu .sub-menu > li.menu-item > a > i,
.left-sidebar .sidebar-menu .sub-menu > li.menu-item > a > i {
	color: #5b6475;
	font-size: 0.95em;
}

/* Forcer TOUS les niveaux du menu sidebar sur une seule ligne */
.porto-home-sidebar .sidebar-menu a,
.left-sidebar .sidebar-menu a {
	white-space: nowrap !important;
}

/* .porto-home-sidebar .sidebar-menu .popup .sub-menu > li.menu-item > a,
.left-sidebar .sidebar-menu .popup .sub-menu > li.menu-item > a {
	white-space: normal;
	line-height: 1.35;
} */

/*
 * Mobile : le menu vertical « Nos niveaux » (style desktop / flyout)
 * ne convient pas — navigation via hamburger Porto (#nav-panel).
 */
@media (max-width: 991px) {
	.porto-home-sidebar .widget_sidebar_menu,
	.left-sidebar.porto-home-sidebar .widget_sidebar_menu,
	.main-sidebar-menu.widget_sidebar_menu,
	.porto-home-sidebar .vc_row:has(.sidebar-menu),
	.porto-home-sidebar .vc_row:has(.widget_sidebar_menu),
	.porto-home-sidebar .vc_row:has(.porto-sidebar-menu),
	.porto-home-sidebar .vc_custom_heading {
		display: none !important;
	}
}

/* Panneau hamburger : appel */
#nav-panel .ss-mobile-panel-phone > a,
#side-nav-panel .ss-mobile-panel-phone > a {
	display: flex !important;
	align-items: center;
	gap: 0.7rem;
	min-height: 48px;
}

#nav-panel .ss-mobile-panel-phone i,
#side-nav-panel .ss-mobile-panel-phone i {
	width: 1.2em;
	flex: 0 0 auto;
	text-align: center;
	color: #235af3;
	font-size: 1.15em;
}

#nav-panel .ss-mobile-panel-phone__text,
#side-nav-panel .ss-mobile-panel-phone__text {
	display: flex;
	flex-direction: column;
	line-height: 1.25;
	gap: 0.1rem;
}

#nav-panel .ss-mobile-panel-phone__label,
#side-nav-panel .ss-mobile-panel-phone__label {
	font-size: 0.72rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	opacity: 0.75;
}

#nav-panel .ss-mobile-panel-phone__num,
#side-nav-panel .ss-mobile-panel-phone__num {
	font-weight: 700;
}

/* Garder les titres sur une ligne même si le texte est long */
.porto-home-sidebar .sidebar-menu .popup .sub-menu > li.menu-item > a,
.left-sidebar .sidebar-menu .popup .sub-menu > li.menu-item > a {
	white-space: nowrap !important;
	line-height: 1.35;
	padding-right: 20px; /* Pour éviter que le texte touche le bord */
}

/* Pour les écrans plus petits, permettre le retour à la ligne */
@media (max-width: 768px) {
	.porto-home-sidebar .sidebar-menu .popup .sub-menu > li.menu-item > a,
	.left-sidebar .sidebar-menu .popup .sub-menu > li.menu-item > a {
		white-space: normal !important;
	}
}