@charset "utf-8";
/* CSS Document */
body {
  -webkit-animation: bugfix infinite 1s;
  /* needed for checkbox hack */
  background: #fff;
}

@-webkit-keyframes bugfix {
  from {
    padding: 0;
  }
  to {
    padding: 0;
  }
}
.hamburger {	
	float: right;
    position: relative;
    display: inline-block;
    width: 36px;
    height: 24px;
    margin-right: 15px;
	margin-top: 10px;
	margin-bottom: 10px;
	border: 0;
	background-color: transparent;
	background-image: linear-gradient(90deg, #000000, #000000);	
	background-image: -o-linear-gradient(90deg, #000000, #000000);	
	background-image: -webkit-linear-gradient(90deg, #000000, #000000);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 3px;
	padding: 0;
	outline: 0;
	
	cursor: pointer;
}

.hamburger:before, .hamburger:after {
  content: "";

  position: absolute;
  left: 0; right: 0;
  display: block;
  height: 3px;
  background: currentColor;
  transition: .25s;
  transition-property: transform, top;
  will-change: transform, top;
}
.hamburger:before {
	height: 3px;
	top:2px;
}
.hamburger:after{
	top: 20px;
	top: calc(100% - 4px);
}
.menut {
	position: absolute;
	right: 65px;
	top: 15px;
	font-variant-caps: small-caps;
	letter-spacing: 5px;
	font-size:1.5em;
	font-weight: 500;
}
.blanc {
	position: fixed;
	z-index: 600;
	background: #FFFFFF;
	top: 0;
	right: 0;
	width: 100px;
	height: 52px;	
}
.panier{
	z-index: 9998;
	position: fixed;
	right:0px;
	top: 0px;	
	cursor: pointer;
}
.panier1 {	
	background: url("images/paniernoir.png");
	background-repeat: no-repeat;
	background-size: 23px 23px;
	width: 23px;
	height: 23px;	
	z-index: 9998;
	position: absolute;
	right:45px;
	top: 22px;
}
.panier2 {
	z-index: 9999;
	width: 20px;
	height: 20px;
	background: #000000;
	position:  absolute;
	right:30px;
	top: 5px;
	border-radius: 50%;
	color: #FFFFFF;
	font-size: 0.875em;
	text-align: center;
	vertical-align: middle;
	padding-top: 2px;
}
.panier:hover > a > .panier1 {
	background: url("images/panierrouge.png");
	background-repeat: no-repeat;
	background-size: 23px 23px;	
}
.panier:hover > a > .panier2 {
	background: #FF0000;
}
/************************************************************************************
****************************** detail panier ****************************************
************************************************************************************/
.floatgauche {
	float: left;
}
.floatdroit {
	float: right;
}
.panierdetail{
	position: absolute;
	right:45px;
	top: 46px;
	width: 300px;
	background: #FFFFFF;
	box-shadow: 0px 4px 8px #888888;
	display: none;	
	
	overflow-y: auto;
	max-height: calc(95vh - 50px);
}
.crazyligne3{
	font-variant: normal;
	font-family: "CRAZY";
	font-size: 1.5em;
	font-display: swap;
}
.crazyligne3:hover{
	color: #FF0000;
}
.panier:hover .panierdetail {
	display: block;
	
	-webkit-animation-name: panier1; 
    -webkit-animation-duration: 0.9s; 
	-webkit-animation-fill-mode: forwards;
    animation-name: panier1;
    animation-duration: 0.9s;
	animation-fill-mode: forwards;
}

@-webkit-keyframes panier1 {
   0%   { opacity: 0;}
    100% { opacity: 1 ;}
}
@keyframes panier1 {
   0%   { opacity: 0;}
    100% { opacity: 1 ;}
}

.tabboutique {
	width: 100%;
}
.tabboutiquetr{
	border-bottom: solid 1px #000000;
	padding-bottom: 5px;
	margin-top: 5px;
}
.tabboutiquetr > td {
	border-bottom: solid 1px #000000;
	padding-bottom: 10px;
	padding-top: 15px;
}
.tabimgboutique {
	max-height: 80px;
	max-width: 50px;
	height: auto;
	width: auto;
	margin: 5px;
}
.tabimgboutique:hover{
	cursor: pointer;
}
.tabcuveeboutique {
	margin-left: auto;
	margin-right: auto;
	display: inline;
	/*border-bottom: solid 1px #000000;*/
	padding-bottom: 5px;
	font-size: 1em;
	font-variant: small-caps;
	text-align:center;
	color:#000;	
	font-family: Cambria, "Hoefler Text", "Liberation Serif", Times, "Times New Roman", "serif";
	font-display: swap;
	letter-spacing: 3.3px;
	
}
.tabcuveeboutique:hover {
	color: #ff0000;
	cursor: pointer;
}
.descriptifboutique {
	margin-top: 5px;
	font-size: 0.75em;
}
.boutonboutiquetab{
	margin-left: auto;
	margin-right: auto;
	margin: 7px auto;
	background: #f0f0f0;
	border: solid 1px #000000;
	padding: 5px 10px;
	font-variant: small-caps;
	text-align:center;
	color:#000;	
	font-family: Cambria, "Hoefler Text", "Liberation Serif", Times, "Times New Roman", "serif";
	font-display: swap;
	letter-spacing: 3.3px;
	width: 75%;
}
.boutonboutiquetab:hover{
	color:#FF0000;
	border: solid 1px #FF0000;
	background: #ffffff;
}

/***********************************************************************************
************************************************************************************/
#nav input.trigger{
	width: 900px;
	}
#nav input.trigger:checked ~ label .hamburger{
	  background-image: none;
}
#nav input.trigger:checked ~ label .hamburger:after, #nav input.trigger:checked ~ label .hamburger:before{
	top : 50%;
}
#nav input.trigger:checked ~ label .hamburger:after{
	transform: rotate(45deg); 
	-webkit-transform: rotate(45deg);
}
#nav input.trigger:checked ~ label .hamburger:before{
	transform: translate3d(0,-50%,0) rotate3d(0,0,1,-45deg);
	-webkit-transform: rotate(-45deg);
}

.petitmenu{
		float: right;
}
#nav {
	background: #fff;
  	position: fixed;
	top: 0;
	right: 100px;
	width: 90%;
	width: calc(100% - 100px);
	z-index: 99;
}


#nav:hover {
	color: red;
}
#nav ul {
  	display: none;
  	width: 100%;
  	list-style: none;
  	margin: 0px;
  	padding: 0px;
}
#nav ul li a {
	white-space: pre;
  	display: block;
  	padding: 1em;
  	background: #fff;
	vertical-align: middle;
	font-size: 1em;
	letter-spacing: 1.5px;
	font-variant: small-caps;
  	color: #000000;
  	text-decoration: none;
	border-bottom: solid 3px #FFffff;	
	transition-property: all; 
    transition-duration: 550ms;
  }
#nav ul li a:hover {
	color: #ff0000;
	border-bottom: solid 3px #FF0000;
}
#nav ul li:last-of-type a {
  border-right: 0px;
}
#nav ul li ul li a {
  padding-left: 1.5em;
}
#nav ul li ul li ul li a {
  padding-left: 3.125em;
}
#nav input.trigger {
  position: absolute;
  top: -9999px;
  left: -9999px;
}
#nav input.trigger:checked ~ ul, #nav input.trigger:checked ~ ul li ul {
  display: block !important;
}

/****************************** responsive *****************************/

@media screen and (min-width: 1460px) {
	#nav input.trigger:checked ~ span{
	border-top: 0.2em solid #f00;
    border-bottom: 0.2em solid #f00;
}
  #nav input.trigger:checked ~ ul, #nav input.trigger:checked ~ ul li ul {
    /* older flexbox */
    display: -webkit-box;
    display: -moz-box;
    display: box;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    box-orient: horizontal;
    /* newer flexbox */
    display: flex;
    flex-direction: row;
  }
}
#nav label {
  position: relative;
  display: block;
  min-height: 2em;
  padding: .45em;
  font-size: 1.1em;
  margin: 0;
  cursor: pointer;
  line-height: 2em;
  color: #000;
}
@media screen and (min-width: 1100px) {

  #nav ul {
    /* older flexbox */
    display: -ms-flexbox;
    flex-direction: -ms-row;
    display: -webkit-box;
    display: -moz-box;
    display: box;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    box-orient: horizontal;
    /* newer flexbox */
    display: flex;
    flex-direction: row;
  }
  #nav ul li {
    position: relative;
    text-align: center;
    /* older flexbox */
    -ms-flex: 1;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    box-flex: 1;
    /* newer flexbox */
    flex: 1;
  }
  #nav ul li ul {
    display: none !important;
    position: absolute;
    top: 3.0625em;
    left: 0;
    display: block;
    width: 12.5em;
    z-index: 200;
  }
  #nav ul li ul li {
    text-align: left;
  }
  #nav ul li ul li ul {
    z-index: 300;
    top: 0px;
    left: 12.4em;
  }
  #nav ul li ul li ul li a {
    padding-left: 30px !important;
  }
  #nav ul li:hover > ul {
    display: block !important;
  }
  #nav label {
    display: none;
  }
	
}



@media screen and (-webkit-min-device-pixel-ratio:0) { 						/* Safari */
	
	::i-block-chrome, #nav {
	background: #fff;
  	position: fixed;
	top: 0;
	left: 0;
	width: 90%;
	width: calc(100% - 100px);
	z-index: 99;

	}
}



@media screen and (max-width: 1100px) {

	#nav {
		text-align: center;
		background:  #FFFFFF url(images/croix2.png) repeat;
		position: fixed;
		top: 0;
		right: 0;
		width: 100%;
		border-bottom: solid 4px #000000;
	}
	#titremenu {
		display: inline-block;
	}
	.menut, .blanc {display: none;}
	.hamburger {
		margin-top: 38px;
		margin-right: 0px;
	}
	.panier1 {	top:47px; right: 75px;	}
	.panier2 {  top:30px; right: 60px;	}
	
	.panierdetail{
		right:75px;
		top: 74px; }
	
}
@media screen and (max-width: 600px) {
	.panier {display: none;}
}
	
@media screen and (max-width: 530px) {
	#nav ul{
		margin-top: 50px;
	}
	.hamburger{
		color: #000000;
		margin-top: 30px;
		margin-right: 0;
	}
}
@media screen and (max-height: 2em) {
	#nav, .blanc, .panier, .panier1 , .panier2 , .langue {
		position: absolute;
		
	}
	#nav{
		position: relative;
		display: inline-block;
		left: 0;
		top: 0;
		min-width: 300px;
		width: 100%;
	}

}