/* --- menu style 2 & 3 & 5 & 6 & 7 & 8 & 9 & 10 --- */
.style_2.menu_container
{
	background: #F0F0F0;
	border-color: #F0F0F0;
}
.style_2 .sf-menu
{
	border-top: 3px solid #E0E0E0;
}
.style_2 .sf-menu li
{
	background-color: #F0F0F0;
	border-bottom-color: #F0F0F0;
	border-top-color: #E0E0E0;	
}
.style_2 .sf-menu>li
{
	margin-top: -3px;
}
.style_2 .sf-menu li.submenu a,
.style_7 .sf-menu li.selected.submenu a,
.style_7 .sf-menu li.submenu:hover a
{
	background-image: url("../images/icons/navigation/menu_arrow.png");
}
.style_2 .sf-menu a:hover,
.style_3 .sf-menu a:hover
{
	background-color: #ED1C24;
}
.style_2 .sf-menu li:hover, .style_2 .sf-menu li.selected,
.style_2 .sf-menu li.submenu:hover,
.style_2 .sf-menu li:hover a, .style_2 .sf-menu li.selected a,
.style_2 .sf-menu li.submenu:hover a,
.style_3 .sf-menu li:hover, .style_3 .sf-menu li.selected,
.style_3 .sf-menu li.submenu:hover,
.style_3 .sf-menu li:hover a, .style_3 .sf-menu li.selected a,
.style_3 .sf-menu li.submenu:hover a,
.style_5 .sf-menu li:hover, .style_5 .sf-menu li.selected,
.style_5 .sf-menu li.submenu:hover,
.style_5 .sf-menu li:hover a, .style_5 .sf-menu li.selected a,
.style_5 .sf-menu li.submenu:hover a,
.style_10 .sf-menu li:hover, .style_10 .sf-menu li.selected,
.style_10 .sf-menu li.submenu:hover,
.style_10 .sf-menu li:hover a, .style_10 .sf-menu li.selected a,
.style_10 .sf-menu li.submenu:hover a
{
	background-color: #ED1C24;
	border-top-color: #ED1C24;
	border-bottom-color: #ED1C24;
}
.style_2 .sf-menu li.selected.submenu a,
.style_2 .sf-menu li.submenu:hover a,
.style_3 .sf-menu li.selected.submenu a,
.style_3 .sf-menu li.submenu:hover a,
.style_5 .sf-menu li.submenu a,
.style_6 .sf-menu li.selected.submenu a,
.style_6 .sf-menu li.submenu:hover a,
.style_7 .sf-menu li.submenu a,
.style_8 .sf-menu li.selected.submenu a,
.style_8 .sf-menu li.submenu:hover a,
.style_9 .sf-menu li.submenu a,
.style_10 .sf-menu li.selected.submenu a,
.style_10 .sf-menu li.submenu:hover a
{
	background-image: url("../images/icons/navigation/dark_bg/menu_arrow.png");
}
.style_2 .sf-menu li.selected a,
.style_2 .sf-menu li:hover a,
.style_3 .sf-menu li.selected a,
.style_3 .sf-menu li:hover a,
.style_5 .sf-menu li a,
.style_6 .sf-menu li.selected a,
.style_6 .sf-menu li:hover a,
.style_7 .sf-menu li a,
.style_8 .sf-menu li.selected a,
.style_8 .sf-menu li:hover a,
.style_9 .sf-menu li a,
.style_10 .sf-menu li.selected a,
.style_10 .sf-menu li:hover a
{
	color: #FFF;
}
/* --- menu style 3 --- */
.style_3.menu_container,
.style_3 .sf-menu li
{
	border-top-color: #ED1C24;
}
/* --- menu style 4 --- */
.style_4.menu_container,
.style_4 .sf-menu li
{
	background-color: #F0F0F0;
	border-color: #F0F0F0;
}
.style_4 .sf-menu li:hover, .style_4 .sf-menu li.selected,
.style_4 .sf-menu li.submenu:hover,
.style_4 .sf-menu li:hover a, .style_4 .sf-menu li.selected a,
.style_4 .sf-menu li.submenu:hover a
{
	background-color: #FFF;
	border-bottom-color: #FFF;
	border-top-color: #ED1C24;
}
/* --- menu style 5 & 7 & 9 & 10 --- */
.style_5.menu_container,
.style_5 .sf-menu li,
.style_7.menu_container,
.style_7 .sf-menu li,
.style_9.menu_container,
.style_9 .sf-menu li
{
	background-color: #363B40;
	border-color: #363B40;
}
.style_5 .sf-menu a:hover,
.style_10 .sf-menu a:hover
{
	background-color: #ED1C24;
}
/* --- menu style 6 --- */
.style_6 .sf-menu
{
	margin-top: 0;
}
.style_6.menu_container,
.style_6 .sf-menu li
{
	border-bottom-color: #363B40;
	border-top: none;
}
.style_6.menu_container
{
	border-bottom-width: 3px;
}
.style_6 .sf-menu a:hover
{
	background-color: #363B40;
}
.style_6 .sf-menu li:hover, .style_6 .sf-menu li.selected,
.style_6 .sf-menu li.submenu:hover,
.style_6 .sf-menu li:hover a, .style_6 .sf-menu li.selected a,
.style_6 .sf-menu li.submenu:hover a
{
	background-color: #363B40;
}
/* --- menu style 7 --- */
.style_7 .sf-menu a:hover
{
	background-color: #25282A;
}
.style_7 .sf-menu li:hover, .style_7 .sf-menu li.selected,
.style_7 .sf-menu li.submenu:hover,
.style_7 .sf-menu li:hover a, .style_7 .sf-menu li.selected a,
.style_7 .sf-menu li.submenu:hover a
{
	background-color: #FFF;
	border-top-color: #FFF;
	border-bottom-color: #FFF;
	color: #25282A;
}
/* --- menu style 8 & 9 & 10 --- */
.style_8 .sf-menu li,
.style_8.menu_container,
.style_10 .sf-menu li,
.style_10.menu_container
{
	border-top-color: #FFF;
}
.style_8 .sf-menu a:hover,
.style_9 .sf-menu a:hover
{
	background-color: #42494F;
}
.style_8 .sf-menu li:hover, .style_8 .sf-menu li.selected,
.style_8 .sf-menu li.submenu:hover,
.style_8 .sf-menu li:hover a, .style_8 .sf-menu li.selected a,
.style_8 .sf-menu li.submenu:hover a,
.style_9 .sf-menu li:hover, .style_9 .sf-menu li.selected,
.style_9 .sf-menu li.submenu:hover,
.style_9 .sf-menu li:hover a, .style_9 .sf-menu li.selected a,
.style_9 .sf-menu li.submenu:hover a
{
	background-color: #42494F;
	border-top-color: #42494F;
	border-bottom-color: #42494F;
}

.menu_container {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
}

.menu_container nav {
	flex: 1;
}

/* === Ajustements menu : tenir sur une ligne, logo collé, bouton s'abonner === */

.menu_container {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	max-width: 100%;
	width: 100%;
	padding-left: 20px;
	padding-right: 20px;
	box-sizing: border-box;
	border-top: none;
	border-bottom: none;
	box-shadow: none;
	margin-bottom: -20px;
}

.menu_container nav {
	flex: 1 1 auto;
	min-width: 0;
}

/* Logo collé au menu, plus de float */
.menu_logo {
	float: none;
	margin-right: 15px;
	width: 80px;
	height: 80px;
	flex-shrink: 0;
}

.sf-menu > li:first-child > a {
	padding-left: 8px;
}

/* Empêcher le menu de passer à la ligne */
.sf-menu {
	display: flex;
	flex-wrap: nowrap;
	white-space: nowrap;
	margin: 0;
}

.sf-menu > li {
	flex-shrink: 0;
}

/* Bouton S'abonner */
.btn_subscribe {
	flex-shrink: 0;
	margin-left: 20px;
	padding: 10px 22px;
	background-color: #2e7d32;
	color: #fff;
	text-decoration: none;
	border-radius: 4px;
	font-weight: 600;
	white-space: nowrap;
	transition: background-color 0.2s ease;
}

.btn_subscribe:hover {
	background-color: #1b5e20;
	color: #fff;
}

/* === MOBILE : réorganisation propre === */
@media (max-width: 767px) {

    .menu_container {
        display: flex !important;
        align-items: center;
        justify-content: flex-start;
        flex-wrap: nowrap;
        width: 100%;
        padding-left: 15px;
        padding-right: 15px;
        box-sizing: border-box;
        position: relative;
    }

    /* Cacher le menu desktop */
    .menu_container > nav {
        display: none !important;
    }

    /* LOGO */
    .menu_logo {
        flex: 0 0 auto;
        width: 60px;
        height: 70px;
        margin: 0;
    }

    .menu_logo img {
        display: block;
        width: 50px;
        height: 60px;
    }

    /* BOUTON S'ABONNER */
    .btn_subscribe {
        flex: 0 0 auto;
        margin-left: auto;
        margin-right: 8px;
        padding: 8px 16px;
        font-size: 13px;
        white-space: nowrap;
    }

    /* MENU HAMBURGER */
    .mobile_menu_container {
        position: static !important;
        flex: 0 0 auto;
        display: flex;
        align-items: center;
        margin: 0;
    }

    .mobile-menu-switch {
        position: static !important;
        display: block;
        margin: 0;
    }

    /* Menu déroulant mobile */
    .mobile-menu {
        width: 100%;
        background-color: #fff;
        box-shadow: 0 4px 10px rgba(0,0,0,0.12);
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .mobile-menu > li {
        border-bottom: 1px solid #eee;
    }

    .mobile-menu > li > a {
        display: block;
        padding: 14px 18px;
        color: #25282A;
        font-weight: 600;
        text-decoration: none;
        font-size: 15px;
    }

    .mobile-menu > li.submenu > a {
        position: relative;
    }

    .mobile-menu li ul {
        list-style: none;
        margin: 0;
        padding: 0;
        background-color: #F7F7F7;
    }

    .mobile-menu li ul li a {
        display: block;
        padding: 12px 30px;
        color: #555;
        text-decoration: none;
        font-size: 14px;
        border-top: 1px solid #eee;
    }

    .mobile-menu li ul li a:hover {
        background-color: #ED1C24;
        color: #fff;
    }
}


/* =========================================
   MENU : BLOC CENTRÉ
   ========================================= */

@media (min-width: 768px) {

    .menu_container {
        display: flex !important;
        align-items: center;
        justify-content: center !important;

        width: 100% !important;
        max-width: none !important;

        margin-left: auto !important;
        margin-right: auto !important;

        padding-left: 20px !important;
        padding-right: 20px !important;
        box-sizing: border-box;
    }

    /* Logo */
    .menu_container .menu_logo {
        flex: 0 0 65px !important;
        width: 65px !important;
        margin-right: 100px !important;
        padding: 0 !important;
    }

    /* Navigation */
    .menu_container > nav {
        flex: 0 1 auto !important;
        width: auto !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Menu */
    .menu_container .sf-menu {
        display: flex !important;
        flex-wrap: nowrap !important;
        width: auto !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Bouton S'abonner */
    .menu_container .btn_subscribe {
        display: block !important;
        flex: 0 0 auto !important;
        margin-left: 100px !important;
    }
}