/********************************************************************
    BARRE SUPERIEURE
********************************************************************/

#barreSup {
    background-color: rgba(245,245,245,0.95);
	border-color: rgb(0,0,0);
	border-style: double;
	border-width: 3px 0;
	color: black;
    display: inline-block;
	font-family: Cormorant;
    margin: 0;
    padding: 0;
    position: fixed;
    top: 2em;
    width: 100%;
	z-index: 100;
}

/********************************************************************
    TITRE
********************************************************************/

#barreSup #titreSite {
    color: rgb(0,0,0);
    display: inline-block;
	font-size: 2.5em;
    font-family: Cormorant;
	font-weight: normal;
	line-height: 2em;
	margin: 0;
    text-transform: uppercase;
}

/********************************************************************
    BOUTON BURGER
********************************************************************/

#barreSup input {
    display: inline-block;
    margin: 0;
    padding: 0;
}

#barreSup #burger {
    display: block;
    position: absolute;
    width: 2em;
    height: 2em;
    top: 2em;
    left: 2.1em;
    cursor: pointer;
    opacity: 0;
    z-index: 100;
    -webkit-touch-callout: none;
  }
 
 #barreSup i.iconeBurger {
    display: inline-block;
	font-size: 2em;
    margin: 0 0 0 0.3em;
    vertical-align: 0px;
    text-align: center;
    width: 2em;
}

#barreSup i.iconeBurger.fa-times {
    display: none;
}

 #barreSup #burger:checked ~ .fa-bars {
	display: none;
}

#barreSup #burger:checked ~ .fa-times {
   display: inline-block;
}

/********************************************************************
    INDICATIONS FILTRE EN COURS
********************************************************************/
 
.filtre {
	background-color: rgba(45,45,45,0.95);
	border-width: 0;
	color: rgb(245,245,245);
	left: 0;
	line-height: 1.5em;
	height: 1.5em;
	margin: 0; 
    padding: 0 50px;
	position: fixed;
	text-transform: uppercase;
	top: calc(7em + 6px);
    width: 100%;
}

.filtre:empty {
	display: none;
}
 
.filtre .item {
	color: rgb(245,245,245);
	padding: 0 2px 0 5px;
}

.filtre .item:hover {
	background-color: rgb(245,245,245); 
	color: black;
}

.filtre .item a {
	display: inline-block;
	margin: 0 0 0 5px;
}

.filtre .item i.fa-times {
	color: transparent;
	height: 1rem;
	line-height: 1rem;
	width: 1rem;
	text-align: center;
	transform: translateY(0.05em);
}

.filtre .item:hover i.fa-times {
	color: black;
	background-color: rgb(215,215,215);
}

/********************************************************************
    MENU
********************************************************************/

.menu {
	border-color: rgb(245,245,245);
	border-style: double;
	border-width: 0 3px 0 0;
	box-sizing: border-box;
    display: block;
	background-color: rgba(20,20,20,0.95);
    left: 0;
    height: 100%;
    padding: 0 40px;
    position: fixed;
    top: calc(8.5em + 6px);
    width: 700px;
    z-index: 100;
    transform-origin: 0% 0%;
    transform: translate(-100%, 0);
    transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
}

.filtre:empty ~ .menu { 
	top: calc(7em + 6px);
}

.menu.top, .filtre:empty ~ .menu.top {
	top: 0;
	height: 2em;
}

#burger:checked ~ .menu {
    transform: none;
}

.menu #champRecherche {
	background-color: rgb(245,245,245);
	background-image: url(../images/loupe.png);
	background-position: 0px 50%;
	background-repeat: no-repeat;
	background-size: contain;
	border-color: rgb(00,00,00);
	border-style: double;
	border-width: 3px 0;
	box-sizing: border-box;
	color: rgb(20,20,20); 
	cursor: pointer;
	font-family: Verdana;
	font-size: 18px;
    height: 36px;
    line-height: 36px;
	margin: 10px 0px;
	padding: 3px 0 3px 30px;
	width: 100%;
}

.menu .boutonFiltre, .menu .conteneurTags {
	background-color: rgba(50,50,50,0.7);
	border-color: white;
	border-style: double;
	border-width: 3px 0;
	color: rgb(245,245,245);
	display: block;
	font-size: 20px;
	margin: 10px 0;
	padding: 1px 0;
	text-transform: capitalize;
	line-height: 36px;

/* 		display: flex;
		align-items: center; */
}

.menu .cook {
	display: flex;
	align-items: center;
}

.menu .boutonFiltre a {
	color: rgb(245,245,245);
}

.menu .boutonFiltre.select a {
	color: black;
}

.menu .boutonFiltre:hover {
	background-color: rgba(100,100,100,0.7);
}

.boutonFiltre::before, .boutonFiltre.durees::after {
	content: ""; 
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	font-size: 0.75em;
	font-weight: 600;
	line-height: 1rem;
	margin: 0;
	text-align: center;
	text-rendering: auto;
	width: 2em; 
	-webkit-font-smoothing: antialiased;
}

.boutonFiltre.select::before {
	content: "\f00d";
}

.menu .conteneurTags {
	display: flex;
	flex-wrap: wrap;
}

.menu .conteneurTags.gout .tag {
	/* width: 50%; */
}

.menu .conteneurTags .tag {
	background-color: rgba(145,145,145,0.15);
	border: 1px rgb(115,115,115) solid;
	color: rgb(245,245,245);
	display: block;
	flex-grow: 2;
	margin: 0.2em;
	padding: 0em 0.4em;
	text-align: center;
}

.menu .tag.select::before {
	content: "\f00d"; 
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	font-size: 0.75em;
	font-weight: 600;
	line-height: 1rem;
	margin: 0 0.4em 0 0;
	text-align: center;
	text-rendering: auto;
	/* width: 25px;  */
	-webkit-font-smoothing: antialiased;
}

.menu .boutonFiltre.select, .menu .conteneurTags .tag.select {
	background-color: rgba(245,245,245,1); 
	border-color: black;
	color: black;
}

.menu .boutonFiltre.durees {
	unicode-bidi: bidi-override;
	direction: rtl;
	text-align: left;
}
.menu .boutonFiltre.durees i {
	margin: 0 0.1em 0 0;
    transform: translateY(0.05em);
}
.menu .boutonFiltre.durees:hover i {
	margin: 0 0 0 0.1em;
	color: black; 
}

.menu .boutonFiltre.durees > a:hover:before,
.menu .boutonFiltre.durees > a:hover ~ a:before {
	content: "\f0c8";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	position: absolute; 
	z-index: 50;
} 

.menu .boutonFiltre .cases {
	content: ""; 
	color: rgb(245,245,245);
	display: inline;
	font-family: "Font Awesome 5 Free";
	font-size: 0.75em;
	font-weight: 600;
	text-align: left;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
}

.menu h2, .menu h3 {
	color: rgb(245,245,245);
	display: block;
	margin: 20px 0 0 0;
	text-transform: uppercase;
}

.menu h3 {
	margin: 20px 0 0 0;
	font-size: 1em;
}

.menu #contact {
	color: rgb(205,205,205);
	bottom: 10px;
	display: block;
	position: fixed;
}

/********************************************************************
    Toggle
********************************************************************/



/* The switch - the box around the slider */
.switch {
	position: relative;
	display: inline-block;
	width: 50px;
	height: 24px;
	vertical-align: middle;
	/* margin: 0 0 5px 0; */
  }
  
  /* Hide default HTML checkbox */
  .switch input {
	opacity: 0;
	width: 0;
	height: 0;
  }
  
  /* The slider */
  .slider {
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #444444;
	-webkit-transition: .4s;
	transition: .4s;
  }
  
  .slider:before {
	position: absolute;
	content: "";
	height: 16px;
	width: 16px;
	left: 4px;
	bottom: 4px;
	background-color: white;
	-webkit-transition: .4s;
	transition: .4s;
  }
  
  input:checked + .slider {
	background-color: #DDDDDD;
  }
  
  input:focus + .slider {
	box-shadow: 0 0 1px #DDDDDD;
  }
  
  input:checked + .slider:before {
	-webkit-transform: translateX(26px);
	-ms-transform: translateX(26px);
	transform: translateX(26px);
  }
  
  /* Rounded sliders */
  .slider.round {
	border-radius: 34px;
  }
  
  .slider.round:before {
	border-radius: 50%;
  }

  #cookModeFeedback {
	margin: 0 0 0 5px;
	text-transform:none;
  }

  #cookModeExplaination {
	color: white;
  }

/********************************************************************
*********************************************************************
*********************************************************************
    AFFICHAGE MOBILE
*********************************************************************
*********************************************************************
********************************************************************/

@media (max-width: 1024px) {
    .menu {
		width: 100%;
	}

	.menu #champRecherche {
		/* background-position: 20px 50%;  */
		font-size: 36px;
		height: 72px;
		line-height: 64px;
		padding: 6px 0 6px 60px;
	} 
	
	.menu .boutonFiltre, .menu .tag {
		font-size: 40px;
		line-height: 64px;
	}

	#barreSup #burger {
		width: 3em;
		height: 3em;
		top: 3em;
		left: 3.2em;
	  }

	.filtre .item {
		/* background-color: rgb(225,225,225);  */
		/* color: black; */
		
		border-color: rgb(200,200,200);
		border-style: solid;
		border-width: 1px;
		margin: 0 5px 0 0;
		padding: 0 7px 0 5px;
	}
	
	.filtre .item i.fa-times {
		color: white;
		/* background-color: rgb(215,215,215); */
	}

	.switch {
		width: 80px;
		height: 44px;
		vertical-align: middle;
		/* margin: 0 0 10px 0; */
	}

	.slider:before {
		height: 36px;
		width: 36px;
	}
  
	input:checked + .slider:before {
	  -webkit-transform: translateX(36px);
	  -ms-transform: translateX(36px);
	  transform: translateX(36px);
	}

	.slider.round {
		border-radius: 44px;
	  }

}