

#middlebar {
    position: sticky;
    z-index: 1000;
    width: 100%;
    top: 0;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}


#logonav {

    display: block;
    position: absolute;
    left: 0%;
    z-index: 100;
    margin-top: 0px;
    transition: all 0.5s;
background: white;
    border-bottom-right-radius: 40px;
    padding: 5px;
}

.dislog {

    display: block !important;

}

.bloc-marquee {


    position: relative;
    margin: 0px auto;
    max-height: 100%;
    padding: 0 10px;
    height: 400px;
    overflow-y: scroll;
}




/*pop-up css*/

.pop-container{
	font-family: quicksand;
}

.pop-container h4{text-align:center;}

.pop-container h3 {
    font-size: 3em;
    margin-top: 0;
    font-family: "Quicksand";
    padding: 15px 10px;
    color: #69cce3;
    text-transform: uppercase;
    font-weight: 500;
    text-align: center;
    margin: 10px;
	text-transform:capitalize;
}

.pop-container  p{
	color:black;
	padding: 5px 15px;
margin: 0;
}

.pop-container .flex-center {
    margin: 15px 0;
}


.pop-container .par2 {
    width: 46%;
    padding: 15px 10px;
    display: flex;
    align-items: center;
    background: #69cce3;
    color: white;
    border: 1px solid white;
    font-weight: 500;
	margin: 0px;
}


.pop-container i {
    font-size: 3.2em;
    padding: 0px;
        padding-right: 0px;
    text-align: center;
    display: block;
    color: white;
    padding-right: 15px;
}



.marquee {

    position: relative;
    width: auto;
    -webkit-animation-name: marquee;
    animation-name: marquee;
    -webkit-animation-duration: 11s;
    animation-duration: 11s;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-direction: alternate;
    animation-direction: alternate;
    -webkit-animation-play-state: running;
    animation-play-state: running;

}

/*.marquee:hover{
    -webkit-animation-play-state: paused;
    animation-play-state: paused;
}*/

.marquee h2 {
    font-size: 2em;
    color: white;
    border-bottom: 1px solid whitesmoke;
    text-align: center;
    padding: 0px 15px;
    font-family: "Quicksand";
    margin:0;
    padding-bottom:12px;
}

.marquee h3{ color:white;}

.marquee p {
    font-size: 1.1em;
    color: white;
    text-align: left;
    padding: 5px 15px;

}

.marquee .btn, .marquee .btn:visited, .marquee .btn:focus, .marquee .btn:active{
    background:#7e9820;
    padding:10px;
        color: white;
    width:100%;
    max-width: 100% !important;
}


.marquee .btn:hover{
    background:white;
     color: #7e9820;
}

.marquee img{
    object-fit: contain;
    max-height:220px;
}




a,
a:focus,
a:active,
a:visited {

    transition: all 250ms;
    background-color: inherit !important;
    color: #4b91b5 !important;
    text-decoration: none;

}

a:hover{
    color: #23394b !important;
    background-color: inherit !important;
}

.container-fluid {
    padding: 0;
    margin: 0;
}

.section-texte {
    background: white;
   
    padding: 0px;
    text-align: left;
    margin: 0 auto;


}

.section-texte h2,
h2, .container-titre {
    color: #243b4e;
    font-weight: 400;
	font-family: 'Cinzel', serif;
    font-size: 2.5em;
    margin-top: 170px;
    margin-bottom: -150px;
	background:#eceff1;
	padding:50px 25px 180px 25px;
	text-transform:uppercase;
	margin-left: auto;
margin-right: auto;
text-align:center;
width:100%;

	
}



h4{color: black;
    text-align: center;
    background: white;
    padding: 15px;
    margin: 0;}

#portfolio h2{
	width:80%;
	padding: 50px 25px 100px 25px;
	margin-bottom: -100px;
	font-family: 'Cinzel', serif;
	 font-weight: 400;
}

.container-titre{font-size:1em;}

.container-titre h2{
	margin:0;
	padding:25px;
	text-transform:uppercase;
}

.container-titre p{
	text-transform:none;
	font-weight:bold;
	font-size:1.1em;
	padding: 10px;
	margin:0;
}


.container-fluid > .navbar-collapse,
.container-fluid > .navbar-header,
.container > .navbar-collapse,
.container > .navbar-header {
    margin: auto;
}

.navbar-collapse{
	height:100vh;
}


/* Classe principale de la barre de navigation */

.navbar-default {
    /* Couleur de fond de la barre de navigation */
    background: white;
    border-color: none;
    transition: all 0.4s;
}



/* Couleur des titres affichés dans la barre */

.navbar-default .navbar-brand {
    color: #6cb7d6;
}

/* Couleur utilisée lors du passage de la souris sur un titre de la barre */

.navbar-default .navbar-brand:hover,
.navbar-default .navbar-brand:focus {
    color: #6cb7d6;
}

/* Couleur utilisée pour les liens */

.navbar-default .navbar-nav > li > a {
    color: #02060b !important;
    border-color: none;
    padding: 2px 32px;
border-right: 1px solid #b3b7bb !important;
text-transform: uppercase;
}

.navbar-default .navbar-nav > li:last-child > a{
	border-right:none !important;
}

/* Couleur utilisée pour les liens lorsque la souris passe dessus */

.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
    background-color: transparent;
    transition: all 0.3s;

}

/* Couleur utilisée pour le lien actif (celui qui est affiché sur la page) */

.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus {
    color: #6cb7d6;
    /* background-color:  #FABB00; */
}

/* Couleur utilisée pour un menu dépliant lorsqu'il est ouvert */

.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
    color: #6cb7d6;
    /* background-color: #EB138A ; */
}

/* Caret */

.navbar-default .navbar-nav > .dropdown > a .caret {
    border-top-color: #6cb7d6;
    border-bottom-color: #6cb7d6;
}

.navbar-default .navbar-nav > .dropdown > a:hover .caret,
.navbar-default .navbar-nav > .dropdown > a:focus .caret {
    border-top-color: #6cb7d6;
    border-bottom-color: #6cb7d6;
}

.navbar-default .navbar-nav > .open > a .caret,
.navbar-default .navbar-nav > .open > a:hover .caret,
.navbar-default .navbar-nav > .open > a:focus .caret {
    border-top-color: #555;
    border-bottom-color: #555;
}

/* Version mobile, le menu devient une icône qui déroule une liste avec le menu en vertical */

.navbar-default .navbar-toggle {
    border-color: #02060b;
    text-align: center;
    transition: all 250ms;
}

.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
    background-color: white;
}

.navbar-default .navbar-toggle .icon-bar {
    background-color: black;
}









label {
    display: inline-block;
    font-weight: 700;
    max-width: 100%;
    margin-bottom: 0px;
}

.navbar {
    margin-bottom: 0px;
}

.navbar-toggle {
    margin-right: 25px;
}

.nav li a.dropdown-toggle {
    background: transparent !important;
    border-radius: 0;
}

.navbar-default {
    min-height: 51px;
    border: none;
    border-radius: 0;
}


.nav li a, .dropdown-menu > li > a:focus,
.dropdown-menu > li > a:visited, .dropdown-menu > li > a:active, .dropdown-menu > li > a:hover {
    color: #23394b !important;
    background: white;
    margin: 0px !important;
    margin: 0em !important;
  font-size: 1em;
font-family: 'Cinzel', serif;
font-weight: 600;
background:white;
}





.dropdown-menu {
    padding: 0px !important;
    padding: 0em !important;
    background: whitesmoke;
min-width: 100%;
 top: 55px;
  margin:0;
}



.dropdown-menu .spip_logo{margin:0; float:none;  height:90px;  width:100%; object-fit:cover; }


.navbar-nav li:hover:nth-child(3) > .dropdown-menu li:first-child .spip_logo,
.navbar-nav li.open:nth-child(3) > .dropdown-menu li:first-child .spip_logo{
	object-fit:contain;
}




.navbar-nav > li{
	padding:16px 0;
}

.dropdown-menu > li > a {
    color: #333333;
    z-index: 100;
    font-size: 1em;
    padding: 8px;
    border-radius: 0;
}

.dropdown-menu > li > a:hover
 {

    color: black !important;
    background: whitesmoke !important;
}


.daterangepicker.dropdown-menu{min-width:auto !important;}




    .langue-selection {
        position: relative;

        border-radius: 8px; /* Coins arrondis pour un effet visuel agréable */

        background: transparent; /* Fond transparent par défaut */
        transition: background 0.3s ease; /* Transition douce du fond */
    }

 

    .langue-menu {
        list-style: none;
        padding: 0;
        margin: 0;
        display: flex;
        flex-direction: column !important; /* Organisation en colonnes forcée */
        align-items: flex-start;
        gap: 10px;
    }

    .langue-item {
        visibility: hidden; /* Cacher les éléments sans changer la disposition */
        opacity: 0;
        transform: translateY(-20px);
        margin: 0px;
        transition: transform 0.5s ease, opacity 0.5s ease, visibility 0.5s;
    }

    /* Afficher uniquement la langue active au départ */
    .langue-item.active {
        visibility: visible;
        opacity: 1;
        transform: translateY(0);
        order: -1; /* Forcer la langue active à rester en première position */
    }

    /* Lorsqu'on survole le menu ou le bloc, afficher toutes les langues non actives en cascade */
    .langue-selection:hover .langue-item:not(.active),
    .langue-menu:hover .langue-item:not(.active),
    .langue-selection:focus-within .langue-item:not(.active),
    .langue-menu:focus-within .langue-item:not(.active) {
        visibility: visible;
        opacity: 1;
        transform: translateY(0);
    }

    /* Créer un effet de cascade en utilisant des délais d'animation */
    .langue-menu:hover .langue-item:not(.active):nth-child(1) { transition-delay: 0.1s; }
    .langue-menu:hover .langue-item:not(.active):nth-child(2) { transition-delay: 0.2s; }
    .langue-menu:hover .langue-item:not(.active):nth-child(3) { transition-delay: 0.3s; }
    .langue-menu:hover .langue-item:not(.active):nth-child(4) { transition-delay: 0.4s; }
    .langue-menu:hover .langue-item:not(.active):nth-child(5) { transition-delay: 0.5s; }
    /* Continuez d'ajouter des délais en fonction du nombre de langues */

    .langue-item a {
        text-decoration: none;
        font-size: 19px;
        text-transform: uppercase;
        color: white !important;
background:#02060b !important;
        border: 1px solid #02060b;
        padding: 3px 6px;
        font-family: 'Cinzel', serif;
        font-weight: 600;
        border-radius: 5px;
        transition: all 250ms;
    }

    .langue-item a:hover {
        background: white !important;
		color:#02060b !important;
    }


.head-margin {
    margin-left: 25px;
    position: absolute;
    width: 110px;

    margin-top: 4px;
    transition: 0.6s all;

}

.head-margin:hover {
    opacity: 0.55;
}

.encadre {
    position: fixed;
padding-top: 4px;
z-index: 1;

width: 100%;

margin: 0px auto;

background: rgba(0, 0, 0, 0.88);
padding-bottom: 8px;
    bottom: 0;
}

.btn-encadre-paiement {

    color: white !important;
    background: #2bb04a !important;
    transition: all 0.4s;
    font-size: 1.1em;
    border-radius: 0;
    border: none;
    line-height: 45px;
    padding: 8px;
    border-left: 2px solid white;
    transform: skewX(-15deg);

}

.btn-encadre-paiement:hover {

    color: #2bb04a !important;
    background: white !important;
    border-radius: 0;
    border: none;
    border-left: 2px solid #2bb04a;

}


.flex-menu {

   display: flex;

flex-flow: row wrap;

-ms-flex-direction: row;

-webkit-flex-direction: row;

-moz-flex-direction: row;

justify-content: space-around;

-ms-justify-content: space-around;

-webkit-justify-content: space-around;

-moz-justify-content: space-around;

-webkit-flex-wrap: wrap;

-ms-flex-wrap: wrap;

flex-wrap: wrap;

}

.flex-debut {
    display: flex;
    display: -webkit-box;
    /* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;
    /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;
    /* TWEENER - IE 10 */
    display: -webkit-flex;
    /* NEW - Chrome */
    display: flex;
    /* NEW, Spec - Opera 12.1, Firefox 20+ */
    -ms-flex-direction: row;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    flex-direction: row;
    -ms-justify-content: flex-start;
    -webkit-justify-content: flex-start;
    -moz-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	position:relative;

}

.flex-even {

    display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    flex-direction: row;
    -ms-flex-direction: row;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    justify-content: space-evenly;
    -ms-justify-content: space-evenly;
    -webkit-justify-content: space-evenly;
    -moz-justify-content: space-evenly;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
align-items: center;
position:relative;
}

.flex-between {

    display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    flex-direction: row;
    -ms-flex-direction: row;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    justify-content: space-between;
    -ms-justify-content: space-between;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
	position:relative;
	

}

.flex-center {
    display: flex;
    display: -webkit-box;
    /* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;
    /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;
    /* TWEENER - IE 10 */
    display: -webkit-flex;
    /* NEW - Chrome */
    display: flex;
    /* NEW, Spec - Opera 12.1, Firefox 20+ */
    -ms-flex-direction: row;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    flex-direction: row;
    -ms-justify-content: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
position:relative;
}


.flex-fin {



    display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;

    flex-direction: row;
    -ms-flex-direction: row;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;

    justify-content: flex-end;
    -ms-justify-content: flex-end;
    -webkit-justify-content: flex-end;
    -moz-justify-content: flex-end;

    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;

}

.share-footer i{
	color:white;
	padding: 4px 5px;
}





@media screen and (max-width: 1300px) {
     .nav li a {

      font-size: 1.05em;
        padding: 2px 10px !important;
    }
}



@media screen and (max-width: 1200px) {

#bloclangue-home{
overflow:visible !important
}

.langue-menu {
flex-direction:row !important;
}

.langue-item {
    visibility: visible;
    opacity: 1;
    transform: translateY(-0px);
}
}


@media screen and (max-width: 1100px) {

.navbar-nav > li {
    padding: 14px 0;
}

    .nav li a {

      font-size: 0.95em;
        padding: 2px 11px !important;
    }
}

@media (min-width: 767px) and (max-width: 1100px) {


.navbar-nav > li {
    padding: 14px 0;
}

    .nav li a {

      font-size: 0.95em;
        padding: 4px 11px !important;
    }

 

    .dropdown-menu{
        top: 54px;
    }
    
    .dropdown-menu > li > a {
        padding: 10px 5px !important;
        font-size: 0.95em;
    }

  
    .head-margin {

        margin-left: 0px;
        width: 100px;
        margin-top: 0;

    }




}

@media screen and (max-width: 867px) {
.nav li a {
    font-size: 0.8em;
  padding: 2px 11px !important;
}



}

@media screen and (max-width: 767px) {
    .navbar-custom-cha {
        width: 100%;
    }

    .head-margin {
        margin: 0;
        width: 90px;

        float: left;
    }


    .navbar-nav {
        margin: 0px;
    }

    .dropdown-toggle {
        text-align: center;
        width: 100%;
        border-bottom: 1px solid #FFF;
    }

    .navbar-default .navbar-nav .open .dropdown-menu > li > a {
        color: black;
	padding: 15px !important;
        width: 100%;
	font-size:1.1em;
        text-align: center;
    }
    .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,
    .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
        color: black;

    }
	.navbar-collapse{
	padding-top: 50px;
	height: calc(100vh - 80px);
	}
	
	.navbar-default .navbar-nav > li > a {
		border-right:none;
	}
	.nav li a {
		font-size:1.4em;
	}
}

@media screen and (max-width: 680px) {

.section-texte h2, h2{
	font-size:1.7em;
	font-weight:500;
}

    .flex-debut,
    .flex-fin {
        justify-content: center;
        -ms-justify-content: center;
        -webkit-justify-content: center;
        -moz-justify-content: center;
    }

    
#logonav{
margin-top:0 !important;
padding: 0 !important;
}

    #logonav img {
        max-height: 100px !important;
        padding: 5px;
    }


}
