
/*
 * LProject — correctif strictement limité au menu mobile.
 * Aucun style desktop n'est modifié.
 */
@media (max-width: 980px) {

	/*
	 * Le panneau reste visuellement identique mais devient une vraie
	 * zone de défilement tactile. 100dvh suit la hauteur visible de
	 * Safari quand sa barre d'adresse change de taille.
	 */
	#lp-primary-navigation.lp-header-navigation.is-open {
		overflow-y: auto !important;
		overflow-x: hidden !important;

		height: 100dvh !important;
		max-height: 100dvh !important;

		-webkit-overflow-scrolling: touch !important;
		overscroll-behavior-y: contain !important;
		touch-action: pan-y !important;

		/*
		 * Important avec un menu flex centré : si le contenu devient
		 * plus haut que l'écran, justify-content:center peut rendre
		 * le haut / bas impossible à atteindre. On part donc du haut.
		 */
		justify-content: flex-start !important;

		/*
		 * Espace supplémentaire pour la barre Safari + safe area iPhone.
		 * Cela permet de faire remonter Contact totalement au-dessus
		 * des contrôles du navigateur.
		 */
		padding-bottom: calc(150px + env(safe-area-inset-bottom)) !important;

		scrollbar-width: none;
	}

	#lp-primary-navigation.lp-header-navigation.is-open::-webkit-scrollbar {
		display: none;
	}

	/*
	 * On conserve l'impression de menu centré dans l'écran au départ,
	 * tout en permettant ensuite de descendre jusqu'aux derniers liens.
	 */
	#lp-primary-navigation.lp-header-navigation.is-open .lp-primary-nav {
		flex: 0 0 auto !important;
		width: 100% !important;
		margin-top: clamp(110px, 16dvh, 210px) !important;
		margin-bottom: 40px !important;
	}

	#lp-primary-navigation.lp-header-navigation.is-open .lp-menu {
		flex: 0 0 auto !important;
		width: 100% !important;
	}

	/*
	 * Si le thème ajoute d'autres éléments sous les liens (bouton,
	 * réseaux, etc.), ils restent également accessibles au scroll.
	 */
	#lp-primary-navigation.lp-header-navigation.is-open .lp-header-actions {
		flex: 0 0 auto !important;
		margin-bottom: calc(30px + env(safe-area-inset-bottom)) !important;
	}
}
