@import url('https://fonts.googleapis.com/css2?family=Exo+2:ital,wght@0,100..900;1,100..900&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');

*{
padding:0px;
border:0px;
margin:0px;
}

html{
width:100%;
min-width:1000px;
margin: auto;
scroll-behavior: smooth;
}

.main_width{
width:1000px;
margin:auto;
}

.max_window_width{
	/* max-width: 2200px; */
	width: 1000px;
	margin: 0 auto;
}


body{
font-family: "Exo 2", sans-serif;
font-weight:600;
width:100%;
}



/* *********************** COMMON *********************** */

p{
color:#2b2525;
line-height:28px;
font-size:16px;
}

p+p{
margin-top: 15px;
}

p strong{
font-weight:700;
}

h1{ 
font-family: "Open Sans", sans-serif;
color: #fff;
font-size: 49px;
font-weight: 800;
line-height: 55px;
letter-spacing: 0px;
font-stretch: 80%;
font-style: italic;
text-transform: uppercase;
}

h2{
font-family: "Open Sans", sans-serif;
color: #2b2525;
font-size: 40px;
font-weight: 800;
line-height: 51px;
letter-spacing: 0px;
font-stretch: 80%;
font-style: italic;
text-transform: uppercase;
}

.button{ 
	display: block;
	width: fit-content;
	cursor: pointer;
	color: white;
	position: relative;
	padding: 8px 20px;
	font-size: 16px;
	text-transform: uppercase;
	border: 0;
	border-radius: 0;
	z-index: 2;
}

.button:after{
	content:'';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-image: url(images/button-background.svg);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: top center;
	z-index: -1;
}

.button:before{
	content: '';
	position: absolute;
	right: -55px;
	width: 88px;
	height: 100%;
	top: 0;
	background-image: url(images/button-after.svg);
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: center;
	transition: all 0.4s;
	z-index: -1;
}

.button:hover:before{
	right: -75px;
}

a{
color:inherit;
text-decoration: none;
}

p a{
text-decoration: underline;
}

.microdata{
display:none;
}


/* *********************** HEADING MSG*********************** */
#heading{
width: 100%;
text-align: center;
background-color: #fff;
height: auto;
background: rgba(155, 0, 0, 1);
background: linear-gradient(132deg, rgba(108, 0, 0, 1) 0%, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
background-size: 400% 400%;
animation: gradient 6s ease infinite;
overflow: hidden;
white-space: nowrap;
position: relative;
height: 37px;
transition: all 0.4s;
z-index: 1000;
}

@keyframes gradient {
	0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}

#heading .textes{
text-align: center;
display: block;
position: absolute;
overflow: hidden;
width: 200vw;
height: 37px;
animation: marquee 20s linear infinite;
}

@keyframes marquee {
  0% { left: 0; }
  100% { left: -100%; }
}

#heading p{
font-weight: 500;
line-height: 37px;
font-size: 13px;
text-transform: uppercase;
color: #fff;
text-align: center;
float: left;
width: 50%;
margin: 0;
}

/* *********************** BANNER/MENU*********************** */
#banner{
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	padding: 0;
	z-index: 100;
	transition: all 0.4s;
}

#banner .eshop-important{
	background: linear-gradient(132deg,rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
	width: 100%;
	margin-bottom: 30px;
	padding: 1px 0 7px;
}

#banner .eshop-important .main_width{
	text-align: right;
}

#banner .eshop-important .mini_menu{
	/*margin-right: 44px;*/
	width: 550px;
	display: inline-block;
	vertical-align: middle;
}

#banner .eshop-important .mini_menu ul{
	list-style: none;
	display: flex; 
	justify-content: space-between;
	width: 100%;
}

#banner .eshop-important .mini_menu ul a{
	color: #fff;
	font-size: 14px;
	line-height: 15px;
	font-weight: 600;
	text-transform: uppercase;
}

#banner .eshop-important .langues{
	display: inline-block;
	vertical-align: middle;
}

#banner .eshop-important .langues a{
	color: #bcbcbc;
	font-size: 13px;
	line-height: 15px;
	font-weight: 600;
}

#banner .eshop-important .langues a+a{
	margin-left: 5px;
	padding-left: 5px;
	border-left: 1px solid #bcbcbc;
}

#banner .eshop-important .langues a.selected{
	color: #fff;
}

#banner>.main_width{
	display: flex;
	justify-content: space-between;
	align-items: center;
	transform: translateY(-30px);
	position: relative;
	z-index: 10;
}

#banner .logo{
	width: 189px;
	height: auto;
	margin-right: 10px;
	position: relative;
    top: -35px;
}

#banner .logo img{
	width: 100%;
	height: auto;
}

#banner .content{
	display: flex;
	flex: 1;
	justify-content: space-between;
	align-items: center;
}

#banner .content .sub_menu a, #banner .content .sub_menu>img{
	display: inline-block;
	vertical-align: middle;
	margin-left: 22px;
}

#banner .content .sub_menu img{
	height: 22px;
	width: auto;
}

#banner .content .sub_menu a:last-of-type{
	transform: translateY(4px);
}

#banner .content .sub_menu>img{
	height: 17px;
}

#banner .eshop-actions{
	display: inline-block;
	vertical-align: middle;
}

#banner .eshop-actions form{
display: inline-block;
/*margin-right: 26px;*/
margin-left: 26px;
vertical-align: middle;
}

#banner .eshop-actions input[type="text"]{
border: 1px solid #fff;
background-color: transparent;
padding: 10px;
border-right: none;
height: 30px;
box-sizing: border-box;
vertical-align: middle;
width: 150px;
font-size: 14px;
color: #bcbcbc;
border-radius: 0;
}

#banner .eshop-actions input[type="text"]::placeholder{
color: #bcbcbc;
}

#banner .eshop-actions input[type="submit"]{
display: inline-block;
width: 30px;
height: 30px;
vertical-align: middle;
background-color: transparent;
border: 1px solid #fff;
border-left: none;
cursor: pointer;
background-image: url(images/icon-search.svg);
background-repeat: no-repeat;
background-position: center;
background-size: 15px;
border-radius: 0;
}

#banner .eshop-actions>a{
display: inline-block;
vertical-align: middle;
text-decoration: none;
height: 21px;
position: relative;
}

#banner .eshop-actions>a+a{
margin-left: 20px;
position: relative;
}

#banner .eshop-actions .cart-count{
color: white;
background-color: #9b0000;
position: absolute;
top: -7px;
right: -7px;
width: 14px;
height: 14px;
text-align: center;
border-radius: 20px;
font-size: 10px;
line-height: 14px;
}

#banner .eshop-actions .infos_cart{
	position: absolute;
	left: 50%;
	top: 35px;
	transform: translateX(-50%);
	width: 300px;
	padding: 20px;
	height: auto;
	border: 1px solid #9b0000;
	z-index: 1000;
	background-color: #fff;
	font-size: 16px;
	boc-sizing: border-box;
	animation: infos-cart 7.8s ease-out;
	animation-fill-mode: forwards;
}

@keyframes infos-cart {
  0% { top: -50px; opacity: 0; }
  10% { top: 35px; opacity: 1; }
  95% { top: 35px; opacity: 1; }
  100% { top: -50px; opacity: 0; }
}

#banner .eshop-actions .infos_cart:after {
	bottom: 100%;
	left: 171px;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-top-color: #9b0000;
	border-width: 10px;
	margin-left: -10px;
	transform: rotate(180deg);
}

#banner .eshop-actions .infos_cart:before{
	content:'';
	position: absolute;
	right: 0;
	bottom: 0;
	height: 6px;
	background-color: #16110b;
	animation: infos-cart-duration 7.0s linear;
}

@keyframes infos-cart-duration {
  0% { width: 100%;}
  100% { width: 0%; }
}



@media screen and (max-width: 1500px) {
  #banner .eshop-actions .infos_cart{
	left: unset;
	right: -21px;
	transform: none;
  }
  #banner .eshop-actions .infos_cart:after{
	left: unset;
	right: 22px;
  }
}

#banner .eshop-actions .animated .cart-count{
animation: pop-cart 1.0s ease-out;
}

@keyframes pop-cart {
  0% { transform: scale(1); opacity: 0; }
  25% { transform: scale(1.5); opacity: 1; }
  50% { transform: scale(0.7); opacity: 1; }
  75% { transform: scale(1.5); opacity: 1; }
  100% { transform: scale(1); opacity: 1; }
}

#banner .eshop-actions>a img{
width: auto;
height: 100%;
}

#banner .eshop-actions>a span.name{
font-size: 13px;
color: #aaaaaa;
font-weight: 500;
display: inline-block;
max-width: 90px;
height: 18px;
line-height: 18px;
text-overflow: ellipsis;
-o-text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}

#banner .mon-tracteur{
	color: #fff;
	font-size: 11px;
	line-height: 15px;
	font-weight: 600;
	text-transform: uppercase;
	padding-top: 27px;
	background-image: url(images/icon-tracteur.svg);
	background-size: 31px;
	background-repeat: no-repeat;
	background-position: top center;
}

#banner #eshop_menu{
margin-top: -40px;
text-align: center;
width: 100%;
padding-bottom: 10px;
position: relative;
z-index: 999;
}

#banner #eshop_menu .burger>ul.responsive{
	display: none;
}

.menu-links{
display: none;
}

#banner #eshop_menu .burger>ul{
	display: flex;
	justify-content: center;
	width: 100%;
	align-items: center;
	list-style: none;
}

#banner #eshop_menu .burger>ul>li{
padding: 0 20px;
}

#banner #eshop_menu ul a{
	text-decoration: none;
	color: #fff;
	font-size: 16px;
	line-height: 18px;
	font-weight: 600;
	text-transform: uppercase;
	padding: 10px 0;
    display: block;
	text-shadow: 0px 0px 2px rgba(0,0,0,0.6);
}

#banner .sub-menu{
	position: absolute;
	width: 207px;
	height: 0;
	overflow: hidden;
	left: 50%;
	transform: translateX(-50%);
	top: 39px;
	z-index: 101;
	transition: all 0.4s;
	box-sizing: border-box;
	padding: 0;
	background-color: #191919;
	text-align: left;
}

#banner li.has-sub{
position: relative;
}

#banner li.has-sub:hover .sub-menu{
	height: auto;
	padding: 4px 0;
}

#banner #eshop_menu ul .sub-menu a{
	width: 100%;
	box-sizing: border-box;
	padding: 7px 20px;
	display: block;
	font-size: 13px;
}

#banner #eshop_menu ul .sub-menu li+li{
border-top: 1px solid #3c3c3c;
}

#banner #eshop_menu .sub-menu a:hover{
	text-decoration: underline;
}

#banner .burger{
	position: relative;
}

#banner .burger:after{
	content: "";
	width: 100%;
	position: absolute;
	height: 2px;
	left: 0;
	top: -15px;
	
}


html:not([data-scroll='0']) #banner{
	background-color: #0c0c0c;
}


#banner:not(.home){
	background-color: #000;
}




/* ***** BANNER TUNNEL D'ACHAT ***** */
#banner.tunnel{
	background-color: #0c0c0c;
}

#banner.tunnel .logo{
	top: 0;
}

#banner.tunnel .eshop-important{
	display: none;
}

#banner.tunnel #eshop_menu{
	background-color: #9b0000;
	padding: 0;
	z-index: unset;
	margin-top: -19px;
}

#banner.tunnel>.main_width{
	transform: translateY(-9px);
}

#banner.tunnel .content .sub_menu{
	display: none;
}

#banner.tunnel .content .sub_menu ul{
	display: none;
}

#banner.tunnel .mon-tracteur{
	display: none;
}

#banner.tunnel .content{
	justify-content: flex-end;
	position: relative;
}

#banner.tunnel .tunnel-menu span{
	text-decoration: none;
	color: #ffffff4f;
	font-size: 14px;
	line-height: 20px;
	padding: 10px 50px;
	display: inline-block;	
	position: relative;
	text-transform: uppercase;
}

#banner.tunnel .tunnel-menu span+span:after{
	content: '';
	position: absolute;
	left: -42px;
	width: 80px;
	height: 1px;
	top: 50%;
	background-color: #ffffff4f;
}

#banner.tunnel .tunnel-menu span.selected{
	color: #fff;
	padding-left: 70px;
	background-image: url(images/icon-check.svg);
	background-size: 17px;
	background-position: left 47px top 11px;
	background-repeat: no-repeat;
}

#banner.tunnel .tunnel-menu span.selected+span:not(.selected){
	color: #fff;
}

#banner.tunnel .tunnel-menu span.selected+span:after{
	background-color: #fff;
}

/* ***** HOME ***** */

#home .c1{
	position: relative;
	min-height: 1000px;
}

#home .c1 .video{
	position: absolute;
	z-index: -1;
	right: 0;
	top: 0;        
	width: 100%;
	height: 100%;
	z-index: -1;
}

#home .c1 .video video{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#home .c1 .video video{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#home .c1 .deco-left{
	position: absolute;
	left: -100px;
	top: 250px;
	padding: 5px 0;
	padding-left: calc((100% - 1000px) / 2 + 100px);
	padding-right: 48px;
	background-image: url(images/button-background.svg);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center;
	z-index: 1;
	display: block;
	color: #fff;
}

#home .c1 .content{
	padding-top: 222px;
    max-width: 53%;
}

#home .c1 .content h1{
	text-shadow: 0px 0px 2px rgba(0, 0, 0, 0.5);
}

#home .c1 .content p{
	color: #fff;
    margin-top: 20px;
	text-shadow: 0px 0px 2px rgba(0, 0, 0, 0.5);
}

#home .c1 .button{
	margin-top: 20px;
}

#home .intro .deco{
	position: absolute;
	left: 0;
	bottom: 0;
	width: 50%;
	max-width: 1250px;
	height: 235px;
	background-image: url(images/home-intro-deco.svg);
	background-size: cover;
	background-position: top right;
	background-repeat: no-repeat;
}

#home .intro .intro-links{
	position: absolute;
	left: 2%;
	bottom: 0;
	width: 55%;
	max-width: 1350px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 300px;
	/* background-color: #fff; */
}

#home .intro .intro-links .slider-controls{
position: absolute;
right: 0;
bottom: -60px;
height: 60px;
width: 120px;
}

#home .intro .intro-links #nextBtn{
position: absolute;
left: 60px;
top: 0;
width: 60px;
height: 60px;
background-image: url(images/intro-slider-next.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: center;
z-index: 20;
cursor: pointer;
}

#home .intro .intro-links #prevBtn{
position: absolute;
left:0;
top: 0;
width: 60px;
height: 60px;
background-image: url(images/intro-slider-prev.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: center;
z-index: 20;
cursor: pointer;
}

#home .intro .intro-links .title{
	background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
	width: 100%;
	box-sizing: border-box;
	padding: 8px 15px;
	margin-top: -5px;
	position: absolute;
	left: 0;
	bottom: 0;
	text-align: left;
}

#home .intro .intro-links>.title{
	right: 0;
	left: unset;
	width: 49.7%;
	z-index: 10;
	height: auto;
}

#home .intro .intro-links .title span{
	font-size: 19px;
	line-height: 22px;
	font-weight: 600;
	color: #fff;
	text-transform: uppercase;
}

#home .intro .intro-links>div{
	height: 100%;
	width: 49.7%;
	max-width: 600px;
}

#home .intro .intro-links>div .item{
    height: 300px;
	width: 100%;
	position: relative;
}

#home .intro .intro-links>div .item .image{
	height: 100%;
	width: 100%;
}

#home .intro .intro-links>div .item .image img{
	height: 100%;
	width: 100%;
	object-fit: cover;
}

#home .c2{
	text-align: center;
	display: flex;
	justify-content: space-between;
	vertical-align: top;
	max-width: 85vw;
	margin: 150px auto;
}

#home .c2 h2{
	display: none;
}

#home .c2 .item{
	width: 31%;
}

#home .c2 .icon{
	width: 100px;
	height: 100px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	display: inline-block;
	vertical-align: middle;
	margin-bottom: 25px;
	border-radius: 200px;
}

#home .c2 .item:first-of-type .icon{
	background-image: url(images/home-vente-icon.svg);
}

#home .c2 .item:nth-of-type(2) .icon{
	background-image: url(images/home-atelier-icon.svg);
}

#home .c2 .item:last-of-type .icon{
	background-image: url(images/home-webshop-icon.svg);
}

#home .c2 .content{
	width: 100%;
	box-sizing: border-box;
	display: block;
	text-align: left;
}

#home .c2 h3{ 
font-family: "Open Sans", sans-serif;
color: #2b2525;
font-size: 25px;
font-weight: 800;
line-height: 32px;
letter-spacing: 0px;
font-stretch: 80%;
font-style: italic;
text-transform: uppercase;
margin-bottom: 10px;
}

#home .c3{
	text-align: center;
	position: relative;
	overflow: hidden;
}

#home .c3:after{
	content: "";
	width: 130%;
	height: 400px;
	left: -15%;
	top: 70px;
	background-image: url(images/home-slider-background.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
}

#home .c2+.c3:after{
	top: 40px;
}

#home .c3 h2{
	margin-bottom: 20px;
}

#home .c3 h2+p{
	margin: -20px 0 20px;
}

#home .c3 .item{
	width: 90%;
	margin: 0 5%;
}

#home .c3 .image{
	width: 100%;
	height: 260px;
	position: relative;
	overflow: hidden;
}

#home .c3 .image .prix-sur-demande{
	background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
	color: #fff;
	padding: 7px 15px;
	position: absolute;
	right: 0;
	bottom: 0;
	font-size: 13px;
}

#home .c3 .image .vendu{
	background-color: #dbdbdb;
	color: #000;
	padding: 7px 25px;
	position: absolute;
	right: 0;
	bottom: 0;
	font-size: 13px;
}

#home .c3 .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s;
}

#home .c3 .item:hover .image img{
	transform: scale(1.1);
}

#home .c3 .content{
	margin-top: 15px;
	text-align: center;
}

#home .c3 .content h3{
	font-size: 16px;
	line-height: 22px;
	font-weight: 600;
}

#home .c3 .content .prix{
	color: #bcbcbc;
    font-size: 14px;
    display: block;
    margin-top: 5px;
	font-weight: 500;
}

#home .c3 .item.sold .image:after{
	content:'VENDU';
	position: absolute;
	right: 10px;
	top: 10px;
	font-size: 16px;
	padding: 7px 15px;
	color: #fff;
	background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
}

#home .c3 .item.new .image:after{
	content:'NEW !';
	position: absolute;
	right: 10px;
	top: 10px;
	font-size: 14px;
	padding: 5px 9px;
	color: #fff;
	background-color: #191919;
}

#home .c3 .owl-next {
	position: absolute;
	right: 0px;
	top: 50%;
	transform: translateY(-50%);
	display: block;
	width: 45px;
	height: 45px;
	color: transparent;
	font-size: 0px;
	background-image: url(images/home-slider-right-button.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

#home .c3 .owl-prev {
	position: absolute;
	left: 0px;
	top: 50%;
	transform: translateY(-50%);
	display: block;
	width: 45px;
	height: 45px;
	color: transparent;
	font-size: 0px;
	background-image: url(images/home-slider-left-button.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

#home .c3+.c3{
	margin-top: 150px;
}

#home .c4{
	margin: 150px 0;
	text-align: center;
	position: relative;
	overflow: hidden;
}

#home .c4:after{
	content: '';
	position: absolute;
	width: 800px;
	height: 550px;
	background-image: url(images/home-c4-deco-left.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: right center;
	left: -545px;
	top: 50%;
	transform: translateY(-50%);
	z-index: -1;
}

#home .c4:before{
	content: '';
	position: absolute;
	width: 800px;
	height: 550px;
	background-image: url(images/home-c4-deco-right.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left center;
	right: -545px;
	top: 50%;
	transform: translateY(-50%);
	z-index: -1;
}

#home .c4 .item{
	display: inline-block;
	width: 29%;
	margin: 0 2% 40px;
}

#home .c4 .item .image{
	width: 100%;
	height: 200px;
	overflow: hidden;
}

#home .c4 .item img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s;
}

#home .c4 .item:hover img{
	transform: scale(1.1);
}

#home .c4 .item .content{
	background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
	width: 100%;
	box-sizing: border-box;
	padding: 8px 15px;
	margin-top: -5px;
	position: relative;
	text-align: left;
}

#home .c4 .item .content p{
	font-size: 16px;
	line-height: 22px;
	font-weight: 600;
	color: #fff;
	text-transform: uppercase;
}

#home .c5{
	background-color: #0c0c0c;
	margin-top: 150px;
	position: relative;
	display: flex;
	justify-content: space-between;
	flex-direction: column-reverse;
}

#home .c5 .deco{
	content:"";
	position: absolute;
	top: 0;
	left: -1px;
	width: 100%;
	height: 150px;
	background-image: url(images/home-c5-deco.svg);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: top center;
	z-index: 5;
}

#home .c5:after{
	content: "SMEETS";
	font-family: "Open Sans", sans-serif;
	color: #fff;
	font-size: 158px;
	font-weight: 800;
	line-height: 130px;
	font-stretch: 100%;
	font-style: italic;
	text-transform: uppercase;
	position: absolute;
	left: 50px;
	top: 540px;
	opacity: 0.03;
	letter-spacing: 15px;
}

#home .c5 .content{
	flex: 1;
	width: 85vw;
	max-width: 750px;
	margin: 100px auto 0;
}

#home .c5 h2{
	color: #fff;
	margin-bottom: 20px;
}

#home .c5 p{
	color: #fff;
}

#home .c5 .button{
	margin-top: 20px;
}

#home .c5 .button:after{
	background-image: url(images/button-background-small.svg);
}

#home .c5 .image{
	width: 1000px;
	height: 100%;
	max-width: 67vw;
	margin: 0 0 0 auto;
}

#home .c5 .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center left;
}

#home .c5+.c3.dark{
	background-color: #0c0c0c;
	padding: 100px 0;
}

#home .c5+.c3.dark:after{
	top: 170px;
}

#home .c3.dark h2, #home .c3.dark p{
	color: #fff;
}

#home .c3.dark .content h3{
	color: #fff;
}

/* ***** SHOP ***** */

#shop{
}

#home #shop{
padding: 0;
}

.shop, .eshop{
position: relative;
}

#shop .microdata{ /* toutes les champs sémantiques schema.org*/
display:none;
}

#shop p.no-product{
	margin: 100px 0 20px;
}

#shop p.no-product+.button{
	margin-bottom: 100px;
}

/* affichage des types + cat + produits */
#shop #shop_home .c1{
	background-image: url(images/shop-intro-background.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: right bottom;
	position: relative;
	min-height: 691px;
}

#shop #shop_home .c1 .deco-left{
	position: absolute;
	left: -100px;
	top: 206px;
	padding: 5px 0;
	padding-left: calc((100% - 1000px) / 2 + 100px);
	padding-right: 48px;
	background-image: url(images/button-background.svg);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center;
	z-index: 1;
	display: block;
	color: #fff;
}

#shop #shop_home .c1 .content{
	padding-top: 250px;
}

#shop #shop_home .c1 h1{
	font-size: 35px;
    line-height: 40px;
}

#shop #shop_home .c2{
	margin: 0 auto 150px;
	position: relative;
	z-index: 1;
}

#shop #shop_home .c2 .grid{
	display: grid;
	grid-template-columns: calc(100% - 410px) 350px;
	grid-template-rows: 1fr 1fr;
	gap: 30px 60px;
	width: 100%;
	height: 550px;
}

#shop #shop_home .c2 #slider1{
	grid-column: 1/2;
	grid-row: 1/3;
}

#shop #shop_home .c2 #slider1 .owl-item{
	position: relative;
	width: 100%;
	height: 550px;
}

#shop #shop_home .c2 #slider1 .owl-item .link{
	height: 100%;
}

#shop #shop_home .c2 #slider1 .image{
	width: 100%;
	height: 100%;
	overflow: hidden;
}

#shop #shop_home .c2 #slider1 .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#shop #shop_home .c2 #slider1 .content{
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 2;
	background: linear-gradient(90deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
	padding: 30px 30px 30px 50px;
}

#shop #shop_home .c2 #slider1 .content:after{
	content: '';
	position: absolute;
	right: -80px;
	top: 0;
	height: 100%;
	width: 80px;
	background-image: url(images/shop-home-slider-deco.svg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: left top;
}

#shop #shop_home .c2 #slider1 .content .title{
	font-family: "Open Sans", sans-serif;
	color: #fff;
	font-size: 31px;
	font-weight: 800;
	line-height: 42px;
	letter-spacing: 0px;
	font-stretch: 80%;
	font-style: italic;
	text-transform: uppercase;
	margin-bottom: 10px;
	display: block;
}

#shop #shop_home .c2 #slider1 .content .button{
	font-size: 14px;
    line-height: 12px;
}

#shop #shop_home .c2 #slider1 .content .button:after{
	background-image: url(images/button-background-light.svg);
}

#shop #shop_home .c2 #slider1 .owl-next {
	position: absolute;
	right: -27px;
	top: 50%;
	transform: translateY(-50%);
	display: block;
	width: 55px;
	height: 55px;
	color: transparent;
	font-size: 0px;
	background-image: url(images/home-slider-right-button.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

#shop #shop_home .c2 #slider1 .owl-prev {
	position: absolute;
	left: -27px;
	top: 50%;
	transform: translateY(-50%);
	display: block;
	width: 55px;
	height: 55px;
	color: transparent;
	font-size: 0px;
	background-image: url(images/home-slider-left-button.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

#shop #shop_home .c2 .item-1{
	grid-column: 2/3;
	grid-row: 1/2;
	position: relative;
}

#shop #shop_home .c2 .item-1 .image{
	width: 100%;
	height: 100%;
	overflow: hidden;
}

#shop #shop_home .c2 .item-1 .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s;
}

#shop #shop_home .c2 .item-1:hover .image img{
	transform: scale(1.1);
}

#shop #shop_home .c2 .item-1 .content{
	background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
	width: 100%;
	box-sizing: border-box;
	padding: 8px 15px;
	position: absolute;
	left: 0;
	bottom: 0;
	text-align: left;
}

#shop #shop_home .c2 .item-1 .content p{
	font-size: 16px;
	line-height: 22px;
	font-weight: 600;
	color: #fff;
	text-transform: uppercase;
}

#shop #shop_home .c2 .item-2{
	grid-column: 2/3;
	grid-row: 2/3;
	position: relative;
}

#shop #shop_home .c2 .item-2 .image{
	width: 100%;
	height: 100%;
	overflow: hidden;
}

#shop #shop_home .c2 .item-2 .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s;
}

#shop #shop_home .c2 .item-2:hover .image img{
	transition: all 0.4s;
}

#shop #shop_home .c2 .item-2:hover .image img{
	transform: scale(1.1)
}

#shop #shop_home .c2 .item-2 .content{
	background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
	width: 100%;
	box-sizing: border-box;
	padding: 8px 15px;
	position: absolute;
	left: 0;
	bottom: 0;
	text-align: left;
}

#shop #shop_home .c2 .item-2 .content p{
	font-size: 16px;
	line-height: 22px;
	font-weight: 600;
	color: #fff;
	text-transform: uppercase;
}

#shop #shop_home .c2+.c3{
	margin-top: 120px;
}

#shop #shop_home .c3{
	text-align: center;
	position: relative;
	overflow: hidden;
}

#shop #shop_home .c3:after{
	content: "";
	width: 130%;
	height: 400px;
	left: -15%;
	top: 70px;
	background-image: url(images/home-slider-background.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
}

#shop #shop_home .c3 h2{
	margin-bottom: 20px;
}

#shop #shop_home .c3 h2+p{
	margin: -20px 0 20px;
}

#shop #shop_home .c3 .item{
	width: 90%;
	margin: 0 5%;
}

#shop #shop_home .c3 .image{
	width: 100%;
	height: 260px;
	position: relative;
}

#shop #shop_home .c3 .image .prix-sur-demande{
	background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
	color: #fff;
	padding: 7px 15px;
	position: absolute;
	right: 0;
	bottom: 0;
	font-size: 13px;
}

#shop #shop_home .c3 .image .vendu{
	background-color: #dbdbdb;
	color: #000;
	padding: 7px 25px;
	position: absolute;
	right: 0;
	bottom: 0;
	font-size: 13px;
}

#shop #shop_home .c3 .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#shop #shop_home .c3 .content{
	margin-top: 15px;
	text-align: center;
}

#shop #shop_home .c3 .content h3{
	font-size: 16px;
	line-height: 22px;
	font-weight: 600;
}

#shop #shop_home .c3 .content .prix{
	color: #bcbcbc;
    font-size: 14px;
    display: block;
    margin-top: 5px;
	font-weight: 500;
}

#shop #shop_home .c3 .owl-next {
	position: absolute;
	right: 0px;
	top: 50%;
	transform: translateY(-50%);
	display: block;
	width: 45px;
	height: 45px;
	color: transparent;
	font-size: 0px;
	background-image: url(images/home-slider-right-button.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

#shop #shop_home .c3 .owl-prev {
	position: absolute;
	left: 0px;
	top: 50%;
	transform: translateY(-50%);
	display: block;
	width: 45px;
	height: 45px;
	color: transparent;
	font-size: 0px;
	background-image: url(images/home-slider-left-button.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

#shop #shop_home .c3+.c3{
	margin-top: 100px;
}

#shop #shop_home .c4{
	margin-top: 150px;
	text-align: center;
	position: relative;
	margin-bottom: 80px;
}

#shop #shop_home .c4 .background{
	position: absolute;
	left: 0;
	top: -50px;
	height: 500px;
	width: 100%;
	background-image: url(images/shop-home-c4-background.jpg);
	background-size: 160%;
	background-repeat: no-repeat;
	background-position: top center;
	z-index: -1;
}

#shop #shop_home .c4 .item{
	display: inline-block;
	width: 29%;
	margin: 0 2% 40px;
}

#shop #shop_home .c4 .item .image{
	width: 100%;
	height: 200px;
	overflow: hidden;
}

#shop #shop_home .c4 .item img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s;
}

#shop #shop_home .c4 .item:hover img{
	transform: scale(1.1);
}

#shop #shop_home .c4 .item .content{
	background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
	width: 100%;
	box-sizing: border-box;
	padding: 8px 15px;
	margin-top: -5px;
	position: relative;
	text-align: left;
}

#shop #shop_home .c4 .item .content p{
	font-size: 16px;
	line-height: 22px;
	font-weight: 600;
	color: #fff;
	text-transform: uppercase;
}

#shop #shop_home .c4_c1{
	padding-top: 40px;
}

#shop #shop_home .c4_c1 .item{
	display: inline-block;
	vertical-align: top;
	width: 25%;
	text-align: center;
}

#shop #shop_home .c4_c1 .item+.item{
	margin-left: 5%;
}

#shop #shop_home .c4_c1 .item .image{
	display: block;
	width: 100%;
	height: 59px;
	margin-bottom: 20px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

#shop #shop_home .c4_c1 .item:nth-of-type(1){
	margin-top: 60px;
}

#shop #shop_home .c4_c1 .item:nth-of-type(1) .image{
	background-image: url(images/shop-home-icon-paiement-scurise.svg);
}

#shop #shop_home .c4_c1 .item:nth-of-type(2){
	margin-top: 30px;
}

#shop #shop_home .c4_c1 .item:nth-of-type(2) .image{
	background-image: url(images/shop-home-icon-livraison.svg);
}

#shop #shop_home .c4_c1 .item:nth-of-type(3) .image{
	background-image: url(images/shop-home-icon-gratuit.svg);
}

#shop #shop_home .c4_c1 .item span{
	font-family: "Open Sans", sans-serif;
	color: #fff;
	font-size: 20px;
	font-weight: 800;
	line-height: 24px;
	letter-spacing: 0px;
	font-stretch: 80%;
	font-style: italic;
	text-transform: uppercase;
	display: block;
	max-width: 250px;
	margin: 0 auto;
}

#shop #shop_home .c5{
	margin-top: -365px;
	z-index: 3;
	position: relative;
	text-align: center;
}

#shop #shop_home .max_window_width+.c3{
	margin-top: 50px;
}

#shop #shop_home .c5 .link{
	display: inline-block;
	vertical-align: top;
	width: 31%;
	margin: 0 0 30px;
	position: relative;
}

#shop #shop_home .c5 .link+.link{
	margin-left: 2%;
}

#shop #shop_home .c5 .image{
	width: 100%;
	height: 315px;
	max-height: 22vw;
	overflow: hidden;
}

#shop #shop_home .c5 .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#shop #shop_home .c5 .content{
	z-index: 2;
	background: linear-gradient(90deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
	padding: 20px;
	text-align: left;
}

#shop #shop_home .c5 .content .title{
	font-family: "Open Sans", sans-serif;
	color: #fff;
	font-size: 22px;
	font-weight: 800;
	line-height: 30px;
	letter-spacing: 0px;
	font-stretch: 80%;
	font-style: italic;
	text-transform: uppercase;
	margin-bottom: 10px;
	display: block;
}

#shop #shop_home .c5 .content .button{
	font-size: 14px;
    line-height: 12px;
}

#shop #shop_home .c5 .content .button:after{
	background-image: url(images/button-background-light.svg);
}

/* affichage de la liste cat2 */
#shop .shop_c1 .intro{
	background-image: url(images/shop-intro-background.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: right bottom;
	position: relative;
	min-height: 640px;
}

#shop .shop_c1 .intro .content{
	padding-top: 240px;
}

#shop .shop_c1 .intro .content .fil_rouge{
	color: #b2b2b2;
    text-transform: uppercase;
    font-size: 14px;
}

#shop .shop_c1 .items.list{
	margin-top: -238px;
    margin-bottom: 101px;
    position: relative;
}

#shop .shop_c1 .item{
	display: inline-block;
	width: 29%;
	margin: 0 2% 40px;
}

#shop .shop_c1 .item .image{
	width: 100%;
	height: 200px;
	overflow: hidden;
}

#shop .shop_c1 .item img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s;
}

#shop .shop_c1 .item:hover img{
	transform: scale(1.1);
}

#shop .shop_c1 .item .content{
	background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
	width: 100%;
	box-sizing: border-box;
	padding: 8px 15px;
	margin-top: -5px;
	position: relative;
	text-align: left;
}

#shop .shop_c1 .item .content p{
	font-size: 16px;
	line-height: 22px;
	font-weight: 600;
	color: #fff;
	text-transform: uppercase;
}


/* affichage de la liste des produits */
#shop .shop_c2 .intro{
	background-image: url(images/shop-intro-background.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: right bottom;
	position: relative;
	min-height: 470px;
}

#shop .shop_c2 .intro .content{
	padding-top: 225px;
}

#shop .shop_c2 .intro .subtitle{
	color: #9b0000;
    text-transform: uppercase;
    font-size: 19px;
    margin-bottom: 0;
    line-height: 15px;
}

#shop .shop_c2 .intro .content .fil_rouge{
	color: #b2b2b2;
    text-transform: uppercase;
    font-size: 14px;
}

#shop.wishlist .shop_c2 .no-product+.button{
	margin-top: 20px;
}

#shop .shop_c2 .intro+.main_width{
	position: relative;
    z-index: 1;
    margin-top: -85px;
}

@media screen and (min-width: 2350px) {
	#shop .shop_c2 .intro{
		min-height: 640px;
	}
	#shop .shop_c2 .intro+.main_width{
		margin-top: -160px;
	}
}

#shop .shop_c2 .sort_list{
	margin-bottom: 50px;
}

#shop .shop_c2 .sort_list form{
	width: fit-content;
    margin: 0 0 10px auto;
}

#shop .shop_c2 .sort_list form label{
	font-size: 14px;
    text-transform: uppercase;
    margin-right: 20px;
    color: #aaaaaa;
}

#shop .shop_c2 .sort_list form select{
	border: 1px solid #aaaaaa;
    background-color: white;
    padding: 5px 10px;
    box-sizing: border-box;
    vertical-align: middle;
    width: 150px;
    font-size: 14px;
}

#shop .shop_c2 .item{
	display: inline-block;
	width: 29%;
	margin: 0 2% 40px;
	vertical-align: top;
}

#shop .shop_c2 .item .image{
	width: 100%;
	height: 260px;
	position: relative;
	overflow: hidden;
}

#shop .shop_c2 .item .image .prix-sur-demande{
	background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
	color: #fff;
	padding: 7px 15px;
	position: absolute;
	right: 0;
	bottom: 0;
	font-size: 13px;
}

#shop .shop_c2 .item .image .vendu{
	background-color: #dbdbdb;
	color: #000;
	padding: 7px 25px;
	position: absolute;
	right: 0;
	bottom: 0;
	font-size: 13px;
}

#shop .shop_c2 .item .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s;
}

#shop .shop_c2 .item:hover .image img{
	transform: scale(1.1);
}

#shop .shop_c2 .item .content{
	margin-top: 15px;
	text-align: center;
}

#shop .shop_c2 .item .content h3{
	font-size: 16px;
	line-height: 22px;
	font-weight: 600;
}

#shop .shop_c2 .item .content .prix{
	color: #bcbcbc;
    font-size: 14px;
    display: block;
    margin-top: 5px;
	font-weight: 500;
}

#shop .shop_c2 .item.sold .image:after{
	content:'VENDU';
	position: absolute;
	right: 10px;
	top: 10px;
	font-size: 16px;
	padding: 7px 15px;
	color: #fff;
	background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
}

#shop .shop_c2 .item.new .image:after{
	content:'NEW !';
	position: absolute;
	right: 10px;
	top: 10px;
	font-size: 14px;
	padding: 5px 9px;
	color: #fff;
	background-color: #191919;
}


/* affichage d'un produit suivant son ID */
#shop .c3{ 
text-align:center;
margin-top: 230px;
}

#shop .c3 .c3_c1{
display: inline-block;
width: 50%;
margin-left: 5%;
vertical-align: top;
text-align: left;
}

#shop .c3 .c3_c1 p.fil_rouge{
font-size: 9px;
margin-bottom: 0px;
opacity: 0.45;
}

#shop .c3 .c3_c1 h1{
color: #2b2525;
font-size: 35px;
line-height: 40px;
margin: 5px 0 20px;
}

#shop .c3 .c3_c1 p.reference{
width: fit-content;
width: -moz-fit-content;
display: inline-block;
font-size: 13px;
text-transform: uppercase;
margin-top: 20px;
}

#shop .c3 .c3_c1 p.reference+p.reference{
margin-top: -40px;
}

#shop .c3 .c3_c1 .ajouter_au_panier{
border: 1px solid #cfcfcf;
margin-bottom: 10px;
}

#shop .c3 .c3_c1 p.prix{
border-bottom: 1px solid #cfcfcf;
padding: 20px;
color: #261a1a;
font-weight: 600;
font-size: 22px;
margin: 0;
}

#shop .c3 .c3_c1 span{
display: block;
}

#shop .c3 .contact-infos span:not(.prix){
display: block;
color: #969892;
font-size: 18px;
}

#shop .c3 .pdfs .button:after{
	background-image: url(images/button-background-small.svg);
}

#shop .c3 .pdfs .button{
	margin-top: 20px;
	font-size: 13px;
}


#shop .c3 .c3_c1 span.info_prix{
background: orange;
  font-size: 12px;
  color: white;
  padding: 0px 13px;
  display: inline-block;
  margin-bottom: 11px;
  margin-top: 5px;
  text-transform: uppercase;	
}

#shop .c3 .c3_c1 span.info_tva{
font-size: 12px;
line-height: 20px;
font-weight: 500;
display: inline-block;
}

#shop .c3 .c3_c1 span.prix_barre{
text-decoration: line-through;
display: inline-block;
}

#shop .c3 .c3_c1 span.prix_commentaire{
display: inline-block;
}

#shop .c3 .devis_button{
margin: 0 0 20px 20px;
}

#shop .c3 .c3_c1 form{
padding: 20px 0;
display: block;
margin: 0 20px;
position: relative;
}

#shop .c3 .c3_c1 form+form{
	margin: 0 20px;
	padding: 0 0 20px;
	width: fit-content;
}

#shop .c3 .c3_c1 label{
opacity: 0.45;
font-size: 15px;
margin-right: 5px;
}

#shop .c3_c1 input[type="number"]{
border: 1px solid #aaaaaa;
background-color: white;
padding: 10px;
height: 40px;
box-sizing: border-box;
vertical-align: middle;
width: 80px;
font-size: 17px;
-moz-appearance: textfield;
}

#shop .c3_c1 input[type="number"]::-webkit-inner-spin-button,
#shop .c3_c1 input[type="number"]::-webkit-outer-spin-button {
-webkit-appearance: none;
margin: 0;
}

.custom-number-input {
  display: inline-block;
	margin-right: 10px;
}

.custom-number-input button {
	background-color: #aaaaaa;
	color: white;
	border: none;
	padding: 10px 12px;
	font-size: 17px;
	cursor: pointer;
	display: inline-block;
	vertical-align: middle;
}

.custom-number-input button.btn-decrement{
	margin-right: -4px;
}

.custom-number-input button.btn-increment{
	margin-left: -4px;
}

.custom-number-input button:hover {
  background-color: #191919;
}

#shop .c3_c1 input[type="submit"]{
display: inline-block;
height: 40px;
vertical-align: middle;
background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
cursor: pointer;
color: white;
position: relative;
padding: 0 15px;
font-size: 18px;
}

#shop .c3_c1 input[type="submit"].second{
	font-size: 16px;
	background: none;
	color: #aaaaaa;
	padding: 0 0 0 30px;
	background-image: url(images/icon-coeur-grey.svg);
	background-size: 20px;
	background-repeat: no-repeat;
	background-position: left 3px center;
	position: relative;
}

#shop .c3_c1 input[type="submit"].second:hover{
	text-decoration: underline;
}

#shop .c3 .c3_c1 form+form:hover:after {
	content: '';
	position: absolute;
	opacity: 0;
	animation: heartUp 1.2s infinite ease-in;
	left: 3px;
	bottom: 25px;
	background-image: url(images/icon-coeur-grey.svg);
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	width: 20px;
	height: 20px;
}


@keyframes heartUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 0, 0) rotate(10deg);
    transform: translate3d(0, 0, 0) rotate(10deg);
  }

  50% {
    opacity: 0.4;
  }

  65% {
    opacity: 0.4;
  }

  90% {
    opacity: 0;
    -webkit-transform: translate3d(0, -35px, 0) scale(1.2) rotate(-10deg);
    transform: translate3d(0, -35px, 0) scale(1.2) rotate(-10deg);
  }

  100% {
    opacity: 0;
  }
}

#shop .c3 .c3_c1 form+form:hover:before {
	content: '';
	position: absolute;
	opacity: 0;
	animation: heartUp2 1s infinite ease-in;
	left: 3px;
	bottom: 25px;
	background-image: url(images/icon-coeur-grey.svg);
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	width: 20px;
	height: 20px;
}


@keyframes heartUp2 {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 0, 0) rotate(-10deg);
    transform: translate3d(0, 0, 0) rotate(-10deg);
  }

  50% {
    opacity: 0.4;
  }

  65% {
    opacity: 0.4;
  }

  90% {
    opacity: 0;
    -webkit-transform: translate3d(10px, -35px, 0) scale(1.2) rotate(10deg);
    transform: translate3d(10px, -35px, 0) scale(1.2) rotate(10deg);
  }

  100% {
    opacity: 0;
  }
}

#shop .c3_c1 .out-of-stock{
padding: 20px 20px;
margin: 0;
font-size: 14px;
line-height: 19px;
color: #969892;
}

#shop .c3_c1 .vendu{
font-size: 16px;
padding: 7px 15px;
color: #fff;
background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
text-transform: uppercase;
width: fit-content;
}

#shop .c3_c1 form .emballage{
margin: 20px 0 0;
font-size: 14px;
line-height: 19px;
color: #969892;
}

#shop .c3_c1 .content+.more-infos .description{
margin-top: 50px;
}

#shop .c3 .beefup-head{
margin-top: 46px;
margin-bottom: 10px;
text-transform: uppercase;
padding-bottom: 0;
background: unset;
-webkit-text-fill-color: unset;
line-height: 26px;
font-size: 24px;
}

#shop .c3 .beefup-body .description{
font-size: 15px;
line-height: 20px;
}

#shop .c3 .beefup-body .description h2{
font-size: 35px !important;
line-height: 60px !important;
}

#shop .c3 .beefup-body .description p{
font-size: 15px;
line-height: 20px;
text-align: justify;
}

#shop .c3  .beefup-body .description ul{
margin: 15px 0;
padding-left: 20px;	
}

#shop .c3 .beefup-body .description table{
	max-width: 100%!important;
	width: 100%!important;
	overflow: auto!important;
}

#shop .c3 .contact-infos{
text-align: left;
}

#shop .c3 .contact-infos a{
	margin-top: 10px;
	display: block;
	width: fit-content;
}

#shop .c3 .contact-infos div.reference{
	margin-top: 10px;
	display: block;
	width: fit-content;
}
#shop .c3 .contact-infos a:hover span{
	text-decoration: underline;
}

#shop .c3 .contact-infos img{
width: 31px;
margin-right: 4px;
display: inline-block;
vertical-align: middle;
}

#shop .c3 .contact-infos span{
display: inline!important;
font-size: 16px!important;
vertical-align: middle!important;
}

#shop .c3 .c3_c2{
display: inline-block;
width: 44%;
vertical-align: top;
}

#shop .c3 .video{
display:block;
width:100%;	
}

#shop .c3 .video iframe{
width:100%;	
}

#shop .c3 .demo-gallery a.item.main_pic{ /*principale*/
width: 100%;
height: 400px;
display:block;
position:relative;
overflow: hidden;
}

#shop .c3 .demo-gallery a.item.main_pic img{
width:100%;
height:100%;
object-fit:contain;
transition: all 0.4s;
}

#shop .c3 .demo-gallery a.item.main_pic:hover img{
transform: scale(1.1);
}

#shop .c3 .demo-gallery a.item.other_pics{ /*miniatures*/
width: 18%;
height:100px;
display:inline-block;
position:relative;
border:0.25px solid white;
overflow: hidden;
}

#shop .c3 .demo-gallery a.item.other_pics img{
width:100%;
height:100%;
object-fit:cover;
transition: all 0.4s;
}

#shop .c3 .demo-gallery a.item.other_pics:hover img{
transform: scale(1.1);
}

#shop .c3 .demo-gallery a.item.other_pics.last{
background-color:#261a1a;
background-image:url('images/voir_plus.svg');
background-repeat:no-repeat;
background-size:85%;
background-position:center;
transition:all 0.15s;
}

#shop .c3 .demo-gallery a.item.other_pics.last img,
#shop .c3 .demo-gallery a.item.other_pics.last .arrow{
display:none;
}

#shop .c3 .demo-gallery a.item.other_pics.last:hover{
background-size:90%;	
}

#shop .c3 .demo-gallery a.item.hidden{
display:none;	
}

#shop .c3 .related{
position: relative;
}

#shop .c3 .related h2{
position: relative;
margin: 120px 0 30px;
text-transform: uppercase;
padding-bottom: 0;
background: unset;
color: #16110b;
-webkit-text-fill-color: unset;
line-height: 26px;
font-size: 24px;
}

#shop .c3 .related .item{
	display: inline-block;
	width: 20%;
	margin: 0 2% 40px;
	vertical-align: top;
}

#shop .c3 .related .item .image{
	width: 100%;
	height: 260px;
	position: relative;
	overflow: hidden;
}

#shop .c3 .related .item .image .prix-sur-demande{
	background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
	color: #fff;
	padding: 7px 15px;
	position: absolute;
	right: 0;
	bottom: 0;
	font-size: 13px;
}

#shop .c3 .related .item .image .vendu{
	background-color: #dbdbdb;
	color: #000;
	padding: 7px 25px;
	position: absolute;
	right: 0;
	bottom: 0;
	font-size: 13px;
}

#shop .c3 .related .item .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s;
}

#shop .c3 .related .item:hover .image img{
	transform: scale(1.1);
}

#shop .c3 .related .item .content{
	margin-top: 15px;
	text-align: center;
}

#shop .c3 .related .item .content h3{
	font-size: 16px;
	line-height: 22px;
	font-weight: 600;
}

#shop .c3 .related .item .content .prix{
	color: #bcbcbc;
    font-size: 14px;
    display: block;
    margin-top: 5px;
	font-weight: 500;
}

#shop .c3 .related .item.sold .image:after{
	content:'VENDU';
	position: absolute;
	right: 10px;
	top: 10px;
	font-size: 16px;
	padding: 7px 15px;
	color: #fff;
	background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
}

#shop .c3 .related .item.new .image:after{
	content:'NEW !';
	position: absolute;
	right: 10px;
	top: 10px;
	font-size: 14px;
	padding: 5px 9px;
	color: #fff;
	background-color: #191919;
}


/* ***** NEWS ***** */

#news{
	margin-bottom: 100px;
}

#news .intro{
	background-image: url(images/shop-intro-background.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: right bottom;
	position: relative;
	min-height: 640px;
}

#news .intro .content{
	padding-top: 278px;
}

#news .intro .deco-left {
	position: absolute;
	left: -100px;
	top: 225px;
	padding: 5px 0;
	padding-left: calc((100% - 1000px) / 2 + 100px);
	padding-right: 48px;
	background-image: url(images/button-background.svg);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center;
	z-index: 1;
	display: block;
	color: #fff;
}

#news .c1{
margin-top: -238px;
position: relative;
z-index: 2;
text-align: center;
text-align: center;
width: 85vw;
max-width: 2200px;
margin: -238px auto 0;
}

#news .c1>p{
	text-align: center;
	color: #fff;
}

#news .c1 .item{
	position: relative;
	height: 262px;
	display: inline-block;
	width: 412px;
	margin: 0 1% 35px;
	overflow: hidden;
}

#news .c1 .item .photo{
	height: 100%;
	width: 100%;
}

#news .c1 .item img{
	height: 100%;
	width: 100%;
	object-fit: cover;
	transition: all 0.4s;
}

#news .c1 .item:hover img{
	transform: scale(1.1);
}

#news .c1 .item .photo:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 200px;
    background: rgb(0,0,0);
    background: linear-gradient(0deg, rgb(0 0 0 / 47%) 0%, rgba(0,0,0,0) 100%);
}

#news .c1 .item .infos{
	text-align: left;
    position: absolute;
    bottom: 23px;
    left: 26px;
    margin-right: 26px;
    transition: all 0.4s;
}

#news .c1 .item .titre{
	font-size: 25px;
	line-height: 31px;
	text-align: left;
	font-weight: 600;
	margin-top: 15px;
	font-family: "Open Sans", sans-serif;
	color: #fff;
	font-style: italic;
	font-weight: 800;
	text-transform: uppercase;
}

#news .c1 .item:hover .infos{
	transform: translateY(-10px);
}

#news .c1 .item h2{
margin-bottom:10px;
}

#news .c1 .item span.date{
font-size:13px;
color:#a4a4a4;
display:block;
margin-bottom:20px;
}


#news .c1 .item span.button{
display:block;
margin-top:30px;
font-weight:700;
text-align:right;
}

#news .c1 .item:hover span.button{
text-decoration:underline;
}

#news .microdata{
	display: none;
}

#news .c2{ /* affichage d'un article */
display: inline-block;
vertical-align: top;
text-align:center;
width: 100%;
margin-top: 240px;
}

#news .c2 .photo{
display: inline-block;
vertical-align: top;
position: relative;
width: 50%;
margin-left: 9%;
}

#news .c2 .photo .date{
background-color: white;
padding: 5px 20px;
display: inline-block;
color: #1d001a;
font-size: 14px;
position: absolute;
bottom: 65px;
right: 15px;
}

#news .c2 .photo img{
width: 100%;
height: auto;
}

#news .c2 h1{
margin-bottom:20px;
color: #2b2525;
margin-bottom: 25px;
}

#news .c2 p.date{
font-size:13px;
color:#a4a4a4;
display:block;
margin-bottom:20px;
}

#news .c2 .pdfs{
margin-top:30px;	
}

#news .c2 .pdfs a{
display: inline-block;
width: 200px;
max-width: 100%;
margin: 0 15px 30px;
height: 150px;
overflow: hidden;
position: relative;
background-color: #fff;
}

#news .c2 .pdfs a .image{
width: 100%;
height: 100%;
}

#news .c2 .pdfs a img{
	width: 100%;
    height: 100%;
	object-fit: cover;
	object-position: center;
	transition: all 0.6s;
}

#news .c2 .pdfs a:hover img{
	transform: scale(1.1);
}

#news .c2 .pdfs a .description{
	position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    background-color: #012153;
    color: white;
    padding: 10px;
    box-sizing: border-box;
    line-height: 20px;
}


#news .c2 .content{
display: inline-block;
vertical-align: top;
text-align: left;
width: 40%;
}

#news .c2 ul{
margin-bottom:20px;
margin-top:20px;
list-style: none;
}

#news .c2 ul li{
font-size: 15px;
padding-left: 15px;
line-height: 28px;
position: relative;
color: #53bcbc;
margin-bottom: 15px;
}

#news .c2 ul li:after {
    content: '';
    position: absolute;
    left: 0;
    top: 11px;
    width: 8px;
    height: 8px;
    border-radius: 20px;
	background-color: #53bcbc;
}


#news .c2 .photos_secondaires{
margin: 50px auto 0;
text-align: center;
}

#news .c2 .photos_secondaires .demo-gallery{
text-align: center;
}

#news .c2 .photos_secondaires a.item{
width: 315px;
max-width: 100%;
height: 210px;
margin: 0 10px 20px;
display: inline-block;
overflow: hidden;
}

#news .c2 .photos_secondaires a.item img{
width: 100%;
height: 100%;
object-fit: cover;
transition: all 0.4s;
}


#news .c2 .photos_secondaires a.item:hover img{
transform: scale(1.1);
}


#news .c2 .related{
margin-top:30px;
padding-top:30px;
border-top:1px solid #c0c0c0;
}

#news .c2 .related .item{
display:block;
line-height:40px;
color:black;
padding-left:35px;
transition:all 0.3s;
background-image:url('images/common/arrow-right-black-small.png');
background-repeat:no-repeat;
background-position:left -25px center;
}

#news .c2 .related .item:hover{
background-position:left 5px center;
}

#news .c2 .related .item:nth-child(odd){
background-color:#ececec;
}

#news .c2 .related .item:nth-child(even){
background-color:#f9f9f9;
}

#news .items_nav{
padding-top: 60px;
text-align: center;
}

#news .items_nav a{
	padding: 5px 10px;
	text-decoration: none;
	border: 1px solid lightgray;
	border-radius: 5px;
}

#news .items_nav a.next{
	background-position: right 9px center;
	padding: 5px 25px 5px 10px;
	margin: 0;
	background-image: url(images/common/next.png);
	background-repeat: no-repeat;
}

#news .items_nav a.prev{
	padding: 5px 10px 5px 25px;
	margin: 0;
	background-image: url(images/common/prev.png);
	background-repeat: no-repeat;
	background-position: 9px center;
}

/* ***** Services ***** */
#services{
	margin-bottom: 100px;
}

#services .intro{
	background-image: url(images/shop-intro-background.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: right bottom;
	position: relative;
	min-height: 640px;
}

#services .intro .content{
	padding-top: 278px;
}

#services .intro .deco-left {
	position: absolute;
	left: -100px;
	top: 225px;
	padding: 5px 0;
	padding-left: calc((100% - 1000px) / 2 + 100px);
	padding-right: 48px;
	background-image: url(images/button-background.svg);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center;
	z-index: 1;
	display: block;
	color: #fff;
}

#services .c2{
	margin-top: -238px;
	position: relative;
	z-index: 1;
	text-align: center;
	overflow: hidden;
}

#services .c2 .item{
	display: inline-block;
	width: 45%;
	margin: 0 2% 50px;
	vertical-align: top;
	background-color: #0c0c0c;
	overflow: hidden;
	position: relative;
}

#services .c2:after{
	content: '';
	position: absolute;
	width: 800px;
	height: 550px;
	background-image: url(images/home-c4-deco-left.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: right center;
	left: -545px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 1;
}

#services .c2:before{
	content: '';
	position: absolute;
	width: 800px;
	height: 550px;
	background-image: url(images/home-c4-deco-right.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: right center;
	right: -545px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 1;
}

#services .c2 .item .image{
	width: 100%;
	height: 250px;
	overflow: hidden;
}

#services .c2 .item .image .item{
	width: 100%;
	margin: 0;
	height: 250px;
}

#services .c2 .item .image .item .image{
	width: 100%;
	height: 100%;
}

#services .c2 .item .image .item .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

#services .c2 .item .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#services .c2 .slider .owl-dots {
  position: absolute;
  bottom: 15px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  z-index: 10;
}

#services .c2 .slider .owl-dot {
  background: transparent;
  border: none;
  padding: 0;
  cursor: pointer;
}

#services .c2 .slider .owl-dot span {
	display: block;
	width: 10px;
	height: 10px;
	background: rgb(0 0 0 / 50%);
	border: 1px solid #9b0000;
	border-radius: 50%;
	transition: all 0.3s ease;
}

#services .c2 .slider .owl-dot.active span {
  background: #9b0000;
  transform: scale(1.3);
}

#services .c2 .slider .owl-dot:hover span {
  background: #9b0000;
  opacity: 0.8;
}

#services .c2 .item:last-of-type .image img{
	object-position: top center;
}

#services .c2 .item .content{
	width: 100%;
	padding: 30px;
	box-sizing: border-box;
	text-align: left;
	min-height: 635px;
}

#services .c2 .item .content h2{
	color: #fff;
	font-size: 35px;
	line-height: 48px;
	margin-bottom: 12px;
}

#services .c2 .item .content p{
	color: #fff;
}

#services .c2 .item .content ul{
	list-style: none;
    margin: 10px 0 0;
}

#services .c2 .item .content li{
	color: #d4d4d4;
	font-size: 13px;
	text-transform: uppercase;
	line-height: 21px;
	padding-left: 20px;
	position: relative;
}

#services .c2 .item .content li:after{
	content: "";
	width: 7px;
	height: 7px;
	position: absolute;
	left: 5px;
	top: 6px;
	border-radius: 20px;
	background-color: #d4d4d4;
}

#services .c2 .item .content li+li{
	margin-top: 15px;
}

#services .c2 .item .content .button{
	position: absolute;
	left: 25px;
	bottom: 40px;
}

#services .c2 .item:last-of-type .button{
	margin-top: 0;
}

#services .c2 .item .button:after {
	background-image: url(images/button-background-small.svg);
}

/* ***** Livraisons ***** */

#livraisons{
	margin-bottom: 100px;
}

#livraisons .intro{
	background-image: url(images/shop-intro-background.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: right bottom;
	position: relative;
	min-height: 640px;
}

#livraisons .intro .content{
	padding-top: 278px;
}

#livraisons .intro .deco-left {
	position: absolute;
	left: -100px;
	top: 225px;
	padding: 5px 0;
	padding-left: calc((100% - 1000px) / 2 + 100px);
	padding-right: 48px;
	background-image: url(images/button-background.svg);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center;
	z-index: 1;
	display: block;
	color: #fff;
}

#livraisons .c2{
	margin-top: -238px;
	position: relative;
	z-index: 1;
	text-align: center;
}

#livraisons .c2 .item{
	display: inline-block;
	vertical-align: top;
	width: 28%;
	margin: 0 2% 40px;
	height: 253px;
	overflow: hidden;
	position: relative;
}

#livraisons .c2 .item .img{
	width: 100%;
	height: 100%;
}

#livraisons .c2 .item .img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s;
}

#livraisons .c2 .item:hover .img img{
	transform: scale(1.1);
}



/* ***** Histoire ***** */

#history{
	margin-bottom: 100px;
}

#history .intro{
	background-image: url(images/shop-intro-background.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: right bottom;
	position: relative;
	min-height: 507px;
}

@media screen and (min-width: 2350px) {
	#history .intro{
		min-height: 640px;
	}
}

#history .intro .content{
	padding-top: 225px;
}

#history .c2{
margin-left:35px;
padding-left:55px;
position: relative;
}

#history .c2:after{
	content: '';
	width: 1px;
	height: 100%;
	left: 1px;
	top: 0;
	background-color: #c0c0c0;
	position: absolute;
	z-index: -1;
}

#history .c2 h2{ 
background-image: url(images/h2_puce.svg);
background-repeat: no-repeat;
background-position: 0px 22px;
background-size: 16px;
position: relative;
left: -62px;
padding-left: 30px;
font-size: 28px;
}

#history .c2 .img{
max-width:100%;
margin:20px 0 30px;
}



/* ***** Mentions légales ***** */


#legal{
text-align:center;
padding:90px 50px 100px; /* a recopier pour toutes les pages SAUF home */

}

#legal .main_width{
padding-top:85px;
padding-bottom:30px;
}


#legal h1{
font-size: 30px;
line-height: 35px;
font-weight: 400;
padding-bottom: 30px;
margin: 0 0 50px;
text-align: center;
position: relative;
}

#legal h2{
background-position: 0px 7px;
position: relative;
bottom: 0px;
margin-top: 14px;
margin-bottom: 14px;
font-size:28px;
line-height:30px;
background-position: bottom left;
padding-bottom: 7px;
}

#legal h3{
line-height:23px!important;
padding-bottom: 6px!important;
}

#legal p{
margin-bottom:5px;
}

#legal p span{
display:inline-block;
vertical-align:top;
width:166px;
text-decoration:underline;
}

#legal .c0{
width:600px;
text-align:left;
display:inline-block;
vertical-align:top;
border:1px solid #c0c0c0;
text-align:left;
padding:1%;
margin-bottom:30px;
background-color:white;
border-radius:13px;
}

#legal .c1{
display:inline-block;
vertical-align:top;
width:36%;
margin-right:6%;
padding:1%;
border:1px solid #c0c0c0;
text-align:left;
margin-bottom:30px;
min-height:262px;
background-color:white;
border-radius:13px;
}

#legal .c1.last{
margin-right:0px;
}

#legal .c1 p{
margin-bottom:8px;
font-size:13px;
line-height:22px;
}

#legal .c2{
width:36%;
padding:1%;
margin-right:4%;
text-align:left;
display:inline-block;
vertical-align:top;
border:1px solid #c0c0c0;
margin-bottom:30px;
height:600px;
overflow:auto;
padding-bottom:30px;
background-color:white;
border-radius:13px;
}

#legal .c2 h3{

}

#legal .c2 h4{

}

#legal .c2 p{
margin-bottom:8px;
font-size:13px;
line-height:22px;
}

#legal .c2 ul li{
margin-bottom:5px;
font-size:13px;
line-height:22px;
padding-left:15px;
list-style-type:none;
}

#legal .c2 ul ul li{
padding-left:30px;
}

#legal .c2.last{
margin-right:0px;
}


/* ***** 404 ***** */

#e404{
text-align: center;
margin-top: 240px;
margin-bottom: 100px;
}

#e404 h1{
color: #2b2525;
margin-bottom: 25px;
}


/* *********************** FOOTER *********************** */

#footer{
	background-color: #000;
	padding-top: 70px;
	margin-top: 70px;
	text-align: center;
	position: relative;
}


#footer.home-footer{
	margin-top: 0;
}

#footer .footer_c1{
	display: inline-block;
	vertical-align: top;
	width: 57%;
	text-align: left;
	margin-right: 3%;
}

#footer .logo{
	display: block;
	width: 80%;
	max-width: 200px;
	height: auto;
	margin-bottom: 20px;
}

#footer .logo img{
	width: 100%;
	height: auto;
}

#footer .footer_c1 p{
	color: #e0e0e0;
	font-size: 14px;
	color: #fff;
}

#footer .contact_links{
	margin-bottom: 50px;
}

#footer .content .footer_c1 .title{
	margin-bottom: 20px;
}

#footer .footer_c2 div+div{
	margin-top: 20px;
}

#footer .content .footer_c1 .partners{
	max-width: 300px;
}

#footer .content .footer_c1 .partners img{
	height: 31px;
	width: auto;
}

#footer .content .footer_c1 .partners a:first-of-type img{
	height: 36px;
}

#footer .content .footer_c1 .partners a{
	display: inline-block;
	vertical-align: bottom;
}

#footer .content .footer_c1 .partners a+a{
	margin-left: 15px;
}

#footer .content .footer_c1 .partners a:nth-of-type(3){
	margin-left: 7px;
}

#footer .content .footer_c1 .partners a:nth-of-type(4){
	margin-left: 26px;
}

#footer .content .footer_c1 .partners a:nth-of-type(n+3){
	margin-top: 15px;
}

#footer .content .footer_c1 .partners a:nth-of-type(2){
	transform: translateY(3px)
}

#footer .footer_c1 a{
	color: #fff;
	font-size: 16px;
	line-height: 24px;
}

#footer .contact_c1{
	display: inline-block;
	vertical-align: top;
	width: 30%;
	margin-right: 3%;
}

#footer .contact_c1 span{
	display: block;
}

#footer .contact_c2{
	display: inline-block;
	vertical-align: top;
	width: 50%;
}

#footer .contact_c2 a{
	margin-bottom: 10px;
	display: block;
	width: fit-content;
	padding-left: 39px;
	background-size: 24px;
	background-position: left center;
	background-repeat: no-repeat;
	line-height: 25px;
	font-size: 15px;
}

#footer .contact_c2 a.tel{
	background-image: url(images/icon-tel-footer.svg);
}

#footer .contact_c2 a.mail{
	background-image: url(images/icon-mail-footer.svg);
}

#footer .contact_c2 .tva{
	color: #dbdbdb;
	font-size: 13px;
	display: block;
}

#footer .content .title{
	font-family: "Open Sans", sans-serif;
	color: #fff;
	font-size: 18px;
	font-weight: 800;
	line-height: 25px;
	letter-spacing: 0px;
	font-stretch: 80%;
	font-style: italic;
	text-transform: uppercase;
	margin-bottom: 0;
	display: block;
}

#footer .content ul+.title{
	margin-top: 20px;
}

#footer .content .footer_c2 a, #footer .content .footer_c3 a{
	display: block;
	width: fit-conent;
	font-size: 14px;
	color: #e0e0e0;
	line-height: 18px;
	padding: 6px 0;
}

#footer .footer_c2{
	display: inline-block;
	vertical-align: top;
	width: 15%;
	text-align: left;
	margin-right: 7%;
	margin-top: 8px;
}

#footer .footer_c3{
	display: inline-block;
	vertical-align: top;
	width: 17%;
	text-align: left;
	margin-top: 8px;
}

#footer .footer_c3 img{
	width: 170px;
	height: auto;
	margin-top: 7px;
	margin-bottom: 30px;
}

#footer p.copyright{
color:#e0e0e0;
text-align:center;
font-size:13px;
margin-top:60px;
padding-top: 20px;
padding-bottom:10px;
}

#footer p.copyright a{
color:#e0e0e0;
text-decoration:underline;
}

#footer p.copyright+a{
width: 90px;
display: block;
margin: 0 auto;
padding-bottom: 12px;
}

#footer p.copyright+a img{
width: 100%;
height: auto;
opacity: 0.4;
}

/* ***** CAPTCHA ***** */

.grecaptcha-badge { 
	visibility: hidden; 
}


/* ***** AOS ***** */

.fade_container {
    overflow-x: hidden;
}


/* *************************** ESHOP *** ESHOP *** ESHOP *************************** */


/* ***** CART ***** */
#cart{
text-align:center;
margin-top: 215px;
margin-bottom: 100px;
}

#cart h1{
	color: #2b2525;
	margin-bottom: 50px;
}

#cart .c1{
width:100%;
text-align: right;
}

#cart .c1 .center{
text-align: center;
}

#cart .c1 p.no_product+.button{
margin: 30px auto 0;
transform: translateX(-30px);
}

#cart .c1 p.no_product+.button:after{
	background-image: url(images/button-background-small.svg);
}

#cart table.panier{
width:100%;
border-collapse: collapse;
table-layout: auto;
margin-bottom:30px;
text-align: left;
}

#cart table.panier tr{
border-bottom:1px solid #e1e1e1;
height:60px;
}

#cart table.panier tr:last-child{
border:none;
}

#cart table.panier td a:hover{
text-decoration: underline;
}

#cart table.panier td.image{
width: 50px;
height: 50px;
display: inline-block;
margin-top: 5px;
}

#cart table.panier td.image>div{
width: 100%;
height: 100%;
overflow: hidden;
}

#cart table.panier td.image img{
width: 100%;
height: 100%;
object-fit: cover;
}

#cart table.panier td.titre{
padding:20px;	
vertical-align: middle;
overflow: hidden;
}

#cart table.panier td.titre a{
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 1;
line-clamp: 1;
-webkit-box-orient: vertical;
font-size: 16px;
}

#cart table.panier td.prix_unitaire{
padding:0px 20px;
width: 85px;
vertical-align: middle;
font-size: 15px;
line-height: 16px;
}


#cart table.panier td.changer_quantite{
width:22px;
text-align:center;
table-layout: auto;
vertical-align: middle;
}

#cart table.panier td.changer_quantite input[type="submit"]{
display:inline-block;
line-height:0px;
color:#7b7a7a;
width:17px;
height:17px;
border:1px solid #e1e1e1;
text-align:center;
background-color:white;
color:#404040;
padding:0px;
margin:0px;
cursor: pointer;
}

#cart table.panier td.changer_quantite input[type="submit"]:hover{
padding:0px;
margin:0px;
}

#cart table.panier td.quantite{
text-align:center;
vertical-align: middle;
}

#cart table.panier td.erreur p{
font-size: 12px;
line-height: 18px;
margin: 0px;
color: #e10613;
}

#cart table.panier td.supprimer{
padding:0px 20px;
vertical-align: middle;
}

#cart table.panier td.supprimer input[type="submit"]{
display:inline-block;
line-height:15px;
color:#7b7a7a;
border:1px solid #e1e1e1;
text-align:center;
background-color:white;
color:#404040;
padding:2px 4px;
margin:0px;
cursor: pointer;
}

#cart table.panier td.supprimer input[type="submit"]:hover{
}

#cart table.panier td.prix{
width:100px;
text-align:right;	
padding-right:13px;
vertical-align: middle;
}

#cart table.panier td.prix p{
display: inline-block;
font-size: 15px;
}

#cart table.panier+a.button{
font-size: 16px;
border: 1px solid #aaaaaa;
background: #fff;
color: #aaaaaa;
transition: all 0.4s;
margin-right: 15px;
display: inline-block;
vertical-align: middle;
}

#cart table.panier+a.button:before{
	display: none;
}

#cart table.panier+a.button:after{
	display: none;
}

#cart table.panier+a.button+a.button{
display: inline-block;
height: 36px;
vertical-align: middle;
background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
cursor: pointer;
color: white;
position: relative;
padding: 0 15px;
font-size: 18px;
line-height: 36px;
vertical-align: middle;
}

#cart table.panier+a.button+a.button:before{
	display: none;
}

#cart table.panier+a.button+a.button:after{
	display: none;
}

#cart .recapitulatif{
text-align:right;
margin-top:30px;
}

div#cart p.livraison{
display: inline-block;
padding-right: 0;
}

div#cart p.livraison+div.title_alert{
margin-right: 7px;
margin-left: 5px;
}

div#cart p.livraison span{
width: 97px;
}

#cart p.total,
#cart p.livraison,
#cart p.total_a_payer,
#cart p.livraison_gratuite,
#cart p.livraison_supplementaire{
font-size:15px;
margin:0px;
padding: 7px 13px;
}

#cart p.total span,
#cart p.livraison span,
#cart p.total_a_payer span,
#cart p.livraison_gratuite span,
#cart p.livraison_supplementaire span{
display:inline-block;
vertical-align:top;
width:120px;
font-weight:900;
}

#cart p.info_livraison_gratuite span{
display:inline-block;
vertical-align:top;
padding-left: 30px;
background-image: url(images/common/arrow-right-black.svg);
background-size: 15px;
background-repeat: no-repeat;
background-position: 3px 10px;
font-size: 15px;
color:#261a1a;
}

#cart p.info_livraison_gratuite{
margin-bottom: 7px;
}

#cart p.total_a_payer{
display:inline-block;
vertical-align:top;
border-top:1px solid #e1e1e1;	
min-width:350px;
}

#cart p.livraison_gratuite{
vertical-align:top;
min-width:300px;
}

#cart p.livraison_supplementaire{
vertical-align:top;
min-width:300px;
}


#cart .tunnel{
border-left:3px solid #e1e1e1;
}

#cart .tunnel p{
padding-left: 45px;
opacity: 0.45;
font-size: 15px;
line-height: 21px;
}

#cart .tunnel p a{
text-decoration: underline;
}

#cart .tunnel .space{
margin-bottom:31px;	
}

.alert_message{
	position: absolute;
    visibility: hidden;
    width: 0;
    height: 0;
    overflow: hidden;
}

.title_alert{
	display: inline-block;
	position: relative;
	margin-left: 10px;
}

.title_alert img{
	width: 15px;
	margin-right: 5px;
}

.title_alert:hover .alert_message{
	visibility: visible;
	height: 63px;
	overflow: visible;
	position: absolute;
	background-color: #e7e7e7;
	padding: 10px;
	z-index: 10;
	width: 300px;
	left: -152px;
	top: -96px;
	box-shadow: 5px 5px 15px -8px #b0b0b0;
	text-transform: none;
	line-height: 1.2;
	text-align: center;
}

.title_alert:hover .alert_message:after {
	top: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-top-color: #e7e7e7;
    border-width: 10px;
    margin-left: -10px;
}

#cart .title_alert:hover .alert_message p{
	font-size: 16px;
    line-height: 22px;
}



@media screen and (max-width: 1600px) {
  .title_alert:hover .alert_message{
	left: unset;
	right: -17px;
  }
  .title_alert:hover .alert_message:after{
	  left: unset;
	  right: 20px;
  }
}


/* ***** LOGIN ***** */
#login{
text-align:center;
margin-top: 215px;
margin-bottom: 100px;
}

#login h1{
	color: #2b2525;
	margin-bottom: 50px;
}

#login .c1{
display: inline-block;
vertical-align: top;
width: 35%;
padding-left: 4%;
text-align: left;
}

#login .c1 label{
color: #aaaaaa;
font-size: 15px;
display: block;
margin-bottom: 10px;
}

#login .c1 input+label{
margin-top: 20px;
}

#login .c1 input[type="email"], #login .c1 input[type="password"]{
border: 1px solid #aaaaaa;
background-color: white;
padding: 10px;
height: 40px;
box-sizing: border-box;
vertical-align: middle;
width: 100%;
font-size: 17px;
margin-right: 5px;
}

#login .c1 input[type="submit"]{        
display: inline-block;
height: 36px;
vertical-align: middle;
background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
cursor: pointer;
color: white;
position: relative;
padding: 0 15px;
font-size: 18px;
line-height: 36px;
vertical-align: middle;
margin-top: 20px;
}

#login .c2{
display: inline-block;
vertical-align: top;
width: 38%;
padding-right: 6%;
text-align: left;
}

#login .c2 a{
margin-top: 20px;
}

#login h2{
margin-top: 46px;
margin-bottom: 10px;
text-transform: uppercase;
padding-bottom: 0;
background: unset;
color: #16110b;
-webkit-text-fill-color: unset;
line-height: 26px;
font-size: 24px;
}



#login p.new_pass a{
font-size:13px;
color: #aaaaaa;
transition:all 0.3s;
}

@keyframes error {
	0% {
		opacity: 0;
		transform: translate(-30px, 0);
		height: 0;
		margin-bottom:0;
	}
	3% {
		opacity: 0;
		transform: translate(-30px, 0);
		height: auto;
		margin-bottom:76px;
	}
	10%{
		opacity: 1;
		transform: translate(0, 0);
		height: auto;
		margin-bottom:76px;
	}
	100% {
		opacity: 1;
		transform: translate(0, 0);
		height: auto;
		margin-bottom:76px;	
	}
}

#login .message{
display: block;
opacity: 0;
transform: translate(-30px, 30px);
animation-name: error;
animation-duration: 15s;
animation-delay: 0.3s;
height: 0;
}

#login .message p{
display:inline-block;
vertical-align:top;
background-color: #e10613;
margin-bottom:5px;
font-size:20px;
line-height:55px;
color:white;
padding:0px 30px;
}

#login .message.success p{
background-color: #261a1a;
}

#login p.error{
display: block;
font-size: 15px;
color: red;
font-weight: 900;
margin-top: 10px;
margin-bottom: 0px !important;
opacity: 0;
transform: translate(-30px, 30px);
animation-name: error;
animation-duration: 15s;
animation-delay: 0.3s;
height: 0;
}

#login label{
display: block;
}


/* ***** SIGN IN ***** */
#signin{
text-align: center;
margin-top: 215px;
margin-bottom: 100px;
position: relative;
}

#banner.tunnel+#wrapper>#signin{
margin-top: 160px;
}

#signin h1{     
	color: #2b2525;
	font-size: 32px;
	max-width: 60vw;
	margin: 0 auto 30px;
}

#signin .c1{
display:inline-block;
vertical-align:middle;
width:35%;
padding-right:10%;
text-align:left;
}

#signin .c2{
display: inline-block;
vertical-align: middle;
max-width: 38%;
text-align: left;
width: max-content;
}

#signin h2{
margin-top: 35px;
margin-bottom: 10px;
text-transform: uppercase;
padding-bottom: 0;
background: unset;
color: #16110b;
-webkit-text-fill-color: unset;
line-height: 26px;
font-size: 24px;
}

#signin .opt_in_label{
display:inline-block;	
}

#signin .submit{
}

#signin .c2 p{
font-size: 13px;
opacity: 0.45;
line-height: 19px;
}

#signin .c2 .button{
display: inline-block;
height: 36px;
vertical-align: middle;
background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
cursor: pointer;
color: white;
position: relative;
padding: 0 15px;
font-size: 18px;
line-height: 36px;
vertical-align: middle;
}

#signin .c2 p.connexion_btn, #recuperation_pass p.connexion_btn{
font-size: 13px;
color: #aaaaaa;
transition: all 0.3s;
margin-top: 20px;
}

#signin .c2 p.connexion_btn a:hover, #recuperation_pass p.connexion_btn a:hover{
opacity: 1;
}

#signin .form_errors p{
display: block;
font-size: 15px;
color: red;
font-weight: 900;
margin-top: 10px;
margin-bottom: 20px !important;
opacity: 0;
transform: translate(-30px, 30px);
animation-name: error;
animation-duration: 15s;
animation-delay: 0.3s;
height: 0;
}

#signin.eshop label, #signin.eshop .label_input{
display:block;
margin-bottom:4px;
font-size: 17px;
}

#signin.eshop .radio label{
display:inline-block;
}

div#signin input[type="email"]{
border: 1px solid #aaaaaa;
background-color: white;
padding: 10px;
height: 40px;
box-sizing: border-box;
vertical-align: middle;
width: 100%;
margin-bottom: 20px;
font-size: 17px;
margin-right: 5px;
}

div#signin input[type="password"]{
border: 1px solid #aaaaaa;
background-color: white;
padding: 10px;
height: 40px;
box-sizing: border-box;
vertical-align: middle;
width: 100%;
margin-bottom: 20px;
font-size: 17px;
margin-right: 5px;
}

div#signin .password-wrapper{
position: relative;
}

div#signin .toggle-password{
position: absolute;
right: 20px;
top: 13px;
background-color: transparent;
cursor: pointer;
width: 18px;
height: 15px;
background-image: url(images/icon-voir.svg);
background-repeat: no-repeat;
background-position: center;
background-size: contain;
}

div#signin .toggle-password.active{
background-image: url(images/icon-voir-no.svg);
height: 17px;
top: 12px;
}

div#signin input[type="text"]{
border: 1px solid #aaaaaa;
background-color: white;
padding: 10px;
height: 40px;
box-sizing: border-box;
vertical-align: middle;
width: 100%;
margin-bottom: 20px;
font-size: 17px;
margin-right: 5px;
}

div#signin input[type="number"]{
border: 1px solid #aaaaaa;
background-color: white;
padding: 10px;
height: 40px;
box-sizing: border-box;
vertical-align: middle;
width: 100%;
margin-bottom: 20px;
font-size: 17px;
margin-right: 5px;
}


div#signin input[type="tel"]{
border: 1px solid #aaaaaa;
background-color: white;
padding: 10px;
height: 40px;
box-sizing: border-box;
vertical-align: middle;
width: 100%;
margin-bottom: 20px;
font-size: 17px;
margin-right: 5px;
}

div#signin.eshop .radio{
margin-bottom: 20px;
}

div#signin.eshop input[type="checkbox"]{
display: inline;
margin-top: 2px;
vertical-align: top;
}

div#signin.eshop .opt_in_container{
margin-top: 20px;
}

div#signin.eshop input[type="checkbox"]+label{
display: inline-block;
width: 90%;
vertical-align: top;
}

div#signin.eshop .space{
display: inline-block;
width: 13px;
}

div#signin.eshop label, div#signin.eshop .label_input{
opacity: 0.45;
font-size: 15px;
line-height: 18px;
margin-bottom: 10px;
}

#signin .c2+.small{
max-width: 780px;
margin: 50px auto 0;
text-align: left;
}

#signin .c2+.small p{
font-size: 12px;
line-height: 14px;
text-align: justify;
color: #aaaaaa;
}

/* ***** MON COMPTE ***** */
#compte{
margin-top: 215px;
margin-bottom: 100px;
text-align:center;
position: relative;
}

#compte h1{
	color: #2b2525;
	margin-bottom: 30px;
	font-size: 32px;
}

#compte h2{
margin-top: 46px;
margin-bottom: 40px;
text-transform: uppercase;
padding-bottom: 0;
background: unset;
color: #16110b;
-webkit-text-fill-color: unset;
line-height: 26px;
font-size: 24px;
}


#compte .c1{
width:100%;
margin-bottom:60px;
}

#compte .c1a{
display:inline-block;
vertical-align:top;
width:55%;
padding-right:4%;
text-align:left;
}

#compte .c1b{
display:inline-block;
vertical-align:top;
width:35%;
padding-left:4%;
text-align:left;
border-left: 1px solid #aaaaaa;
}

#compte .c1 p{
font-size:16px;
margin-bottom:8px;
}

#compte .c1 p span{
display:inline-block;
vertical-align:top;
min-width:240px;
font-weight:900;
}

#compte .c1 a.button{
margin-bottom:16px;	
}

#compte .c1 .changer_password{
background-image: url('images/common/password.png');
background-repeat: no-repeat;
background-position: 0px 3px;
padding-left: 61px;
padding-top: 5px;
padding-bottom: 5px;
display: inline-block;
margin-bottom:16px;
}

#compte .c1 .modifier_info_personnelles{
background-image: url('images/common/update-arrow.png');
background-size:21px;
background-repeat: no-repeat;
background-position: 0px 3px;
padding-left: 32px;
padding-top: 5px;
padding-bottom: 5px;
display: inline-block;
margin-bottom:16px;
}

#compte .c1 .mes-adresses{
background-image: url('images/common/adresses.svg');
background-size:21px;
background-repeat: no-repeat;
background-position: 0px 3px;
padding-left: 32px;
padding-top: 5px;
padding-bottom: 5px;
display: inline-block;
margin-bottom:16px;
}

#compte .c1 .logout{
background-image: url('images/common/logout.png');
background-size:21px;
background-repeat: no-repeat;
background-position: 0px 3px;
padding-left: 28px;
padding-top: 5px;
padding-bottom: 5px;
display: inline-block;
margin-bottom:16px;
}

#compte .commande{
border: 1px solid #aaaaaa;
padding: 20px;
text-align: left;
max-width: 1000px;
margin: 0 auto 30px;
position: relative;
}

#compte .commande .help-links{
position: absolute;
right: 20px;
top: 20px;
}

#compte .commande .help-links a{
display: inline-block;
font-size: 14px;
text-transform: uppercase;
padding: 5px 10px;
margin-right: 10px;
background: linear-gradient(90deg, rgba(191, 24, 34, 1) 0%, rgba(230, 86, 28, 1) 28%, rgba(191, 21, 34, 1) 100%);
cursor: pointer;
color: white;
}

#compte .commande .help-links form{
	display: inline-block;
}

#compte .commande .help-links form input{
display: inline-block;
background-color: #d3d3d3;
font-size: 14px;
text-transform: uppercase;
padding: 5px 10px;
cursor: pointer;
}

#compte .commande p{
font-size: 16px;
margin-bottom: 8px;
}

#compte .commande span{
display: inline-block;
vertical-align: top;
min-width: 240px;
font-weight: 900;
}

#compte .commande span.etat_content{
display: inline-block;
vertical-align: top;
min-width: 0;
font-weight: normal;
}

#compte .commande span.etat_content.bg_purple{
background-color: #34209E;
color: white;
padding: 0 10px;
border-radius: 5px;
}

#compte .commande span.etat_content.bg_green{
background-color: #70b580;
color: white;
padding: 0 10px;
border-radius: 5px;
}

#compte .commande span.etat_content.bg_red{
background-color: #E74C3C;
color: white;
padding: 0 10px;
border-radius: 5px;
}

#compte .commande span.etat_content.bg_orange{
background-color: #d89e34;
color: white;
padding: 0 10px;
border-radius: 5px;
}

#compte .commande .infos_paiement{
border: 2px solid #34209E;
border-radius: 5px;
padding: 15px;
margin: 20px 2%;
}

#compte .commande .infos_paiement p:first-of-type{
font-weight: 900;
margin-bottom: 15px;
}

#compte .commande .infos_paiement p:nth-of-type(n+1) span:first-of-type{
font-weight: 900;
min-width: 170px;
}

#compte .commande .infos_paiement p:nth-of-type(n+1) span+span{
font-weight: normal;
}

#compte table{
width: 100%;
margin-top: 30px;
}

#compte table thead{
background-color: #d3d3d3;
}

#compte table th, #compte table td{
padding: 10px;
}

#compte table tr td.important{
	font-weight: bold;
	text-align: right;
}

#compte table tr:last-child td+td{
	font-weight: bold;
}

/* ***** MES ADRESSES ***** */

#signin.mes-adresses h2{
	margin-bottom: 20px;
}

#signin.mes-adresses .c1, #signin.mes-adresses .c2{
	vertical-align: top;
}

#signin.mes-adresses form .c1{
	width: 100%;
}

#signin.mes-adresses input[name="rue"]{
	width: 255px;
    display: inline-block;
    vertical-align: top;
}

#signin.mes-adresses input[name="numero"]{
	width: 75px;
    margin-right: 0;
    margin-left: 10px;
    display: inline-block;
    vertical-align: top;
}

#signin.mes-adresses select{
	border: 1px solid #aaaaaa;
    background-color: white;
    padding: 0 10px;
    border-radius: 0px;
    height: 40px;
    box-sizing: border-box;
    vertical-align: middle;
    width: 100%;
    margin-bottom: 20px;
    font-size: 17px;
    margin-right: 5px;
}

#signin.mes-adresses .c1 input[type="submit"]{   
display: inline-block;
height: 36px;
vertical-align: middle;
background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
cursor: pointer;
color: white;
position: relative;
padding: 0 15px;
font-size: 18px;
line-height: 36px;
vertical-align: middle;
margin-top: 20px;
}

#signin.mes-adresses .adresse{
	width: 100%;
    background-color: white;
    border: 1px solid #aaaaaa;
    text-align: left;
    display: inline-block;
    vertical-align: top;
    border-radius: 0px;
    padding: 20px;
    box-sizing: border-box;
    position: relative;
    margin-bottom: 30px;
	width: 100%;
}

#signin.mes-adresses .adresse p{
	font-size: 16px;
    opacity: 1;
    line-height: 25px;
    margin: 0;
}

#signin.mes-adresses .adresse span{
	display: block;
}

#signin.mes-adresses .c2{
	width: 33%;
}

#signin.mes-adresses .c2 form{
	position: absolute;
	top: 0;
	right: 0;
}

#signin.mes-adresses .c2 input[type="submit"]{
	background-color: transparent;
    color: #231f20;
    text-decoration: underline;
    margin: 5px 10px 0 0;
	cursor: pointer;
}


/* ***** RÉCUPÉRATION MOT DE PASSE ***** */
#recuperation_pass{
margin-top: 215px;
margin-bottom: 100px;
text-align:center;
position: relative;
}

#recuperation_pass h1{        
	color: #2b2525;
	margin-bottom: 30px;
	font-size: 32px;
}

#recuperation_pass p.error{
display: block;
font-size: 15px;
color: red;
font-weight: 900;
margin-top: 10px;
margin-bottom: 0px !important;
opacity: 0;
transform: translate(-30px, 30px);
animation-name: error;
animation-duration: 15s;
animation-delay: 0.3s;
animation-fill-mode: forwards;
height: 0;
}

#recuperation_pass form p{
margin-bottom: 40px;
}

.eshop a.btn_back{
opacity: 0.45;
display: inline-block;
vertical-align: top;
line-height: 16px;
font-size: 16px;
background-color: transparent;
border: 1px solid hsl(0deg 0% 0% / 45%);
position: absolute;
top: 12px;
left: 30px;
padding: 7px 20px 7px 50px;
background-image: url(images/button-back.svg);
background-repeat: no-repeat;
background-position: left 10px center;
background-size: 32px;
}

#recuperation_pass form {
width: 450px;
margin: 0 auto;
text-align: center;
}

#recuperation_pass label {
opacity: 0.45;
font-size: 15px;
display: block;
margin-bottom: 10px;
}

#recuperation_pass input[type="text"], #recuperation_pass input[type="password"], #recuperation_pass input[type="email"] {
border: 1px solid #aaaaaa;
background-color: white;
padding: 10px;
height: 40px;
box-sizing: border-box;
vertical-align: middle;
width: 100%;
font-size: 17px;
margin-bottom: 10px;
}

#recuperation_pass input[type="submit"] {        
display: inline-block;
height: 30px;
vertical-align: middle;
background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
cursor: pointer;
color: white;
position: relative;
padding: 0 15px;
font-size: 15px;
line-height: 30px;
vertical-align: middle;
margin: 20px auto 0;
}

/* ***** CHECKOUT ***** */

#checkout{
margin-top: 160px;
margin-bottom: 100px;
text-align:center;
position: relative;
}

#checkout .content{
vertical-align: top;
width: 64%;
display: inline-block;
text-align: left;
}

#checkout h1{
color: #2b2525;
margin-bottom: 50px;
}

#checkout .facturation_form{
position: absolute;
display: inline-block;
height: 0;
opacity: 0;
overflow: hidden;
}

@keyframes opacity {
  0% {opacity: 0;}
  100% {opacity: 1;}
}

#checkout .facturation_form.visible{
position: relative;
display: inline-block;
animation-name: opacity;
animation-duration: 0.6s;
overflow: hidden;
height: auto;
opacity: 1;
width: 100%;
margin-top: 40px;
}

#checkout .resume{
vertical-align: top;
width: 25%;
margin-left: 5%;
padding-left: 5%;
display: inline-block;
border-left: 2px solid #cccccc;
text-align: center;
}

#checkout .resume p{
max-width: 285px;
margin: 0 auto 20px;
display: flex;
justify-content: space-between;
font-size: 16px;
text-align: center;
}

#checkout .resume .cart{
margin-bottom: 30px;
}

#checkout .resume .cart p:last-of-type{
border-bottom: 1px solid #cccccc;
padding-bottom: 20px;
}

#checkout .resume .adresses{
margin-top: 50px;
margin-bottom: 50px;
}

div#checkout .resume p.produit span{
font-weight: bold;
max-height: 3em;
overflow: hidden;
max-width: 75%;
font-size: 15px;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 1;
line-clamp: 1;
-webkit-box-orient: vertical;
}

div#checkout .resume p.produit span+span{
font-weight: normal;
}

#checkout .resume p.produit{
text-align: left;
font-size: 16px;
line-height: 22px;
}

#checkout .resume p.adresse_livraison{
display: block;
}

#checkout .resume p.adresse_livraison span+span{
font-size: 14px;
line-height: 18px;
margin-bottom: 0;
}

#checkout .resume p.adresse_livraison .name,#checkout, .resume p.adresse_livraison .address{
display: block;
text-align: left;
}

#checkout .resume p.adresse_facturation{
display: block;
}

#checkout .resume p.adresse_facturation .name, #checkout .resume p.adresse_facturation .address{
display: block;
text-align: left;
margin-bottom: 5px;
}

#checkout .resume p.adresse_facturation .title, #checkout .resume p.adresse_livraison .title{
display: inline-block;
}

#checkout .resume p.adresse_facturation, #checkout .resume p.adresse_livraison{
text-align: left;
margin-bottom: 20px;
}

#checkout .resume p.adresse_facturation span:nth-child(n+2){
font-size: 14px;
line-height: 18px;
margin-bottom: 0;
}

#checkout .resume p.total{
border-top: 1px solid #cccccc;
padding-top: 15px;
margin-bottom: 35px;
}

#checkout .resume p.tva{
display: block;
text-align: left;
}

#checkout .resume p.tva span{
display: block;
}

#checkout .resume p.tva span+span{
font-size: 14px;
line-height: 18px;
margin-bottom: 0;
}

#checkout .resume p.tva span+span a{
text-decoration: underline;
}

#checkout input[type="submit"]{
display: inline-block;
height: 36px;
vertical-align: middle;
background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
cursor: pointer;
color: white;
position: relative;
padding: 0 15px;
font-size: 18px;
line-height: 36px;
vertical-align: middle;
margin-top: 20px;
}

#checkout .resume p.total span, #checkout .resume p.livraison span+span, #checkout .resume p.total_articles span+span{
font-weight: 900;
}

#checkout .resume .adresses .title{
font-weight: 900;
}

div#checkout .resume.checkout-resume span{
	font-weight: normal;
}

div#checkout .resume.checkout-resume span+span{
	font-weight: 900;
}

div#checkout .resume.checkout-resume p.total span{
	font-weight: 900;
}

#checkout h1{
margin-bottom: 60px;
text-align: center;
}

#checkout p.label_input{
font-size: 22px;
margin-bottom: 30px;
}

#checkout p.livraison_camion{
font-size: 15px;
line-height: 18px;
color: #e10613;
margin-bottom: 30px;
}

#checkout .choices{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

#checkout .choice{
width: 49%;
background-color: white;
box-sizing: border-box;
border: 1px solid #cccccc;
text-align: left;
margin: 0 0 25px 0;
display: inline-block;
vertical-align: top;
cursor: pointer;
border-radius: 0px;
}

#checkout .paiement .choice{
width: 49%;
display: block;
min-height: auto;
margin: 0 0 20px;
}

#paiement_reception{
        text-align: center;
        margin-bottom: 55px;
        padding-top: 210px;
}

#paiement_reception>div{
max-width: 1000px;
margin: auto;
}

#paiement_reception>div.align-left{
text-align: left;
}

#paiement_reception h1{
	margin: 0 auto 50px;
	color: #2b2525;
	font-size: 36px;
	line-height: 45px;
}

#paiement_reception>div p.intro{
text-align: center;
}

#paiement_reception div.content p.inline{
display: inline;
}

#paiement_reception div.content p:not(.inline){
margin: 10px 0;
}

#paiement_reception div.content p:not(.inline) span:first-of-type{
font-weight: bold;
}

#paiement_reception .infos_paiement{
padding: 10px 20px;
margin: 30px 0;
box-sizing: border-box;
border: 2px solid #261a1a;
border-radius: 20px;
}

#paiement_reception .content>img{
margin: 30px auto;
width: 200px;
height: auto;
display: block;
}

#paiement_reception .button{
	margin: 30px auto 0;
}

#paiement_reception .button:after{
	background-image: url(images/button-background-small.svg);
}

#checkout .choice.selected{
border: 2px solid #261a1a;
font-weight: 500;
background-color: #efefef;
position: relative;
}

#checkout .choice.selected:after{
content:"";
position: absolute;
display: block;
right: 10px;
top: 10px;
width: 20px;
height: 20px;
background-image: url(images/icon-selected.svg);
background-size: 100%;
background-repeat: no-repeat;
background-position: center;
}

#checkout .choice label{
display: inline-block;
width: 100%;
padding: 20px;
box-sizing: border-box;
cursor: pointer;
min-height: 106px;
}

#checkout .paiement+.paiement{
	margin: 20px 0;
}

#checkout .paiement+.paiement .label_input{
	margin-bottom: 10px;
}

#checkout .paiement input[type="text"]{
	border: 1px solid #aaaaaa;
	background-color: white;
	padding: 17px 10px;
	height: 30px;
	box-sizing: border-box;
	vertical-align: middle;
	width: 300px;
	font-size: 14px;
}

#checkout .paiement .checkout-button{
	background: #aaaaaa;
	padding: 8px 15px 9px;
	font-size: 15px;
	/* margin-left: -3px; */
	color: #fff;
	display: inline-block;
	vertical-align: middle;
}

#checkout .paiement #reduction_message,#checkout .paiement #promo_message{
	display: inline-block;
	vertical-align: middle;
	font-size: 14px;
    text-transform: uppercase;
    color: #aaaaaa;
    margin-top: 8px;
}

#checkout .paiement .reduction_alert .alert_message{
	top: -100px;
	height: 70px;
}

#checkout .paiement .reduction_alert .alert_message p{
	font-size: 13px;
    text-align: left;
    line-height: 18px;
}


@media screen and (max-width: 1600px) {
  #checkout .paiement .reduction_alert .alert_message{
	right: unset;
	left: -17px;
  }
  #checkout .paiement .reduction_alert .alert_message:after{
	  right: unset;
	  left: 25px;
  }
}

#checkout .paiement .title_alert{
	display: none;
}

#checkout .paiement #reduction_message.active+.title_alert, #checkout .paiement #promo_message.active+.title_alert{
	display: inline-block;
	vertical-align: middle;
	margin: 8px 0 0 5px;
}

#checkout .paiement .choice label{
min-height: auto;
}

#checkout .paiement .choice label img{
width: 30px;
height: 30px;
padding: 0 5px;
vertical-align: middle;
}

#checkout .paiement .choice label span{
display: block;
margin-top: 12px;
}

#checkout .choice span{
display: block;
}

#checkout .form_opener{
margin-top: 20px;
cursor: pointer;
}

#checkout .form_opener input, #checkout .form_opener label{
cursor: pointer;
}

#checkout .facturation_form>label{
display: inline-block;
font-weight: 900;
width: 295px;
vertical-align: top;
margin: 10px 30px 10px 0;
}

#checkout .facturation_form .tva-infos{
display: block;
font-size: 12px;
margin-top: 10px;
font-weight: 400;
line-height: 17px;
color: #aaaaaa;
margin-bottom: 40px;
}

#checkout .facturation_form>input[type="text"]{
border: 1px solid #bdc3c7;
padding: 10px;
font-size: 16px;
color: #2c3e50;
transition: all 0.2s ease-in-out;
margin-bottom: 20px;
width: 350px;
border-radius: 0;
vertical-align: top;
margin: 0;
}

#checkout input[type="radio"] {
visibility: hidden;
position: absolute;
}

#checkout .new_address{
width: 49%;
background-color: white;
box-sizing: border-box;
border: 1px solid #cccccc;
text-align: center;
margin: 0 0 25px 0;
display: inline-block;
vertical-align: top;
cursor: pointer;
border-radius: 0px;
padding-bottom: 25px;
}

#checkout .new_address .button{
width: 100%;
padding: 0;
height: 100%;
border-radius: 0;
background: transparent;
color: #14190b;
font-size: 18px;
padding-top: 60px;
box-sizing: border-box;
position: relative;
}

#checkout .new_address .button:before{
content: "";
position: absolute;
top: 25px;
left: 50%;
transform: translateX(-50%);
width: 25px;
height: 25px;
display: block;
background-image: url(images/icon-more.svg);
background-size: 25px;
background-position: center;
background-repeat: no-repeat;
}

#checkout .new_address .button:after{
	display: none;
}

#checkout .new_address_form{
	position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    width: 100vw;
    background-color: rgb(158 158 158 / 42%);
	z-index: 101;
	display: none;
}

#checkout .new_address_form.visible{
	display: block;
}

#checkout .new_address_form .pop-up{
	width: 700px;
    height: fit-content;
    padding: 50px;
    background-color: white;
    opacity: 1;
    margin: 0 auto;
    margin-top: 60px;
	text-align: left;
}

#checkout .new_address_form .pop-up-title{
	text-align: center;
}

#checkout .new_address_form label{
	max-width: 350px;
    margin: 0 auto 4px;
	display: block;
}

#checkout .new_address_form input[type="text"]{
	border: 1px solid #bdc3c7;
    padding: 10px;
    font-size: 16px;
    color: #2c3e50;
    transition: all 0.2s ease-in-out;
    width: 350px;
    border-radius: 4px;
    background-repeat: no-repeat;
    background-position: 10px center;
	display: block;
	margin: 0 auto 20px;
    box-sizing: border-box;
}

#checkout .new_address_form .pop-up_submit{
	text-align: center;
    margin-top: 50px;
}

#checkout .new_address_form .pop-up_close{
	text-align: center;
    margin-top: 35px;
}

#checkout .new_address_form .pop-up_close a{
    background-color: white;
}

#checkout .loader{
  text-align: center;
} 

#checkout .loader p, #checkout .loader div, #checkout .loader input{
  opacity: 0;
  transition : none;
} 

#checkout .loader:before{
content: "";
border: 3px solid #f3f3f3;
border-top: 3px solid #876161;
border-radius: 50%;
width: 35px;
height: 35px;
animation: spin 2s linear infinite;
opacity: 1;
position: absolute;
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(550deg); }
}


/* ***** CATALOGUES ***** */

#catalogues{
padding: 90px 50px 100px;
text-align: center;
}

#catalogues h1{
font-size: 30px;
line-height: 35px;
font-weight: 400;
padding-bottom: 30px;
margin: 0 0 50px;
position: relative;
}

#catalogues p.important{
color: #261a1a;
font-weight: 600;
margin-bottom: 40px;
}

#catalogues a.item{
display: inline-block;
vertical-align: top;
width: 45%;
margin: 25px 2%;
box-sizing: border-box;
text-align: left;
padding: 13px 43px;
text-align: center;
text-decoration: none;
transition: all 0.3s;
border: 1px solid #cfcfcf;
border-radius: 20px;
}

#catalogues a.item:hover{
background-color: #f1f1f1;
}

#catalogues .item h2{
text-align: left;
margin-bottom: 20px;
text-transform: uppercase;
border-bottom: 1px solid #261a1a;
font-weight: 600;
}

#catalogues .item h2 span{
display: block;
color: #969892;
font-size: 18px;
}

#catalogues .item p.texte{
text-align: left;
}


#catalogues .item img{
display:block;
width: 168px;
margin: 20px auto;
padding:13px;
}


#catalogues .item span.button{
background: rgb(171,199,62);
background: linear-gradient(90deg, rgba(171,199,62,1) 25%, rgba(104,188,69,1) 100%);
display: inline-block;
border-radius: 30px;
background-color: #14190b;
color: white;
padding: 8px 23px;
margin: 0;
transition: all 0.5s ease-in-out;
font-size: 15px;
text-decoration: none;
transition: all 0.3s;
padding-right: 65px;
position: relative;
margin-bottom: 20px;
}

#catalogues .item span.button:after {
content: "";
width: 30px;
height: 10px;
position: absolute;
top: 50%;
right: 0;
transform: translate(calc( 100% - 55px ),-50%);
background-image: url(images/button-after.svg);
background-size: 40px;
background-position: center right;
background-repeat: no-repeat;
transition: all 0.6s;
}

#catalogues .item:hover span.button:after {
width: 40px;
}

/* ***** LIVRAISON ET RETOURS ***** */

#livraison{
	text-align: center;
	margin-bottom: 100px;
}

#livraison .intro{
	position: relative;
	margin-bottom: 55px;
	padding-top: 230px;
}

#livraison .intro h1{
	color: #2b2525;
	margin-bottom: 25px;
}

#livraison .c2{
	margin-top: 100px;
}

#livraison h2{
	margin-bottom: 30px;
}

#livraison h3{
	margin: 20px 0 5px;
	line-height: 23px;
	font-size: 20px;
}

#livraison .c1_c1, #livraison .c2_c1{
	display: inline-block;
	width: 50%;
	margin-right: 10%;
	vertical-align: middle;
	text-align: left;
}

#livraison .c2_c1{
	margin: 0 0 0 10%;
}

#livraison .c1_c2, #livraison .c2_c2{
	display: inline-block;
	width: 35%;
	height: auto;
	vertical-align: top;
}

#livraison .image{
	width: 100%;
	height: 300px;
	overflow: hidden;
}

#livraison .image img{
	width: 100%;
	height: 100%;
	object-fit: contain;
}

/* ***** CONTACT ***** */

#contact{
text-align: center;
margin-top: 240px;
margin-bottom: 100px;
}

#contact h1{
color: #2b2525;
margin-bottom: 25px;
font-size: 36px;
font-weight: 800;
line-height: 43px;
}


#contact .c1{
display:inline-block;
width:35%;
margin-right: 5%;
text-align:left;
vertical-align: middle;
}

#contact .c1 p span.head{
display: block;
width: 100%;
font-size: 12px;
line-height: 18px;
text-transform: uppercase;
color: #261a1a;
}

#contact .c1 a{
	text-decoration: underline;
}

#contact .c1 h2{
margin-top: 8px;
margin-bottom: 18px;
text-transform: uppercase;
padding-bottom: 0;
background: unset;
color: #16110b;
-webkit-text-fill-color: unset;
line-height: 26px;
font-size: 24px;
width: 100%;
padding: 0;
}

#contact .c1 p.logo img{
display:none;
}

#contact .microdata{
display: none;
}

#contact .c3{
	display: inline-block;
	vertical-align: middle;
	width: 54%;
	text-align: center;
	height: 350px;
}

#contact .c3 iframe{
	width: 100%;
	height: 100%;
	object-fit: cover;
}


#contact .c2{
display:inline-block;
vertical-align: middle;
width:100%;
max-width: 550px;
margin: 100px 0 auto;
text-align:left;
}

#contact .c2 img{
width:100%;
height:auto;
}

#contact .map{
width: 100%;
height: 900px;
margin-top: 100px;
margin-bottom: -228px;
}

/* ***** NEWSLETTER ***** */
#newsletter_form{
	position: fixed;
    right: -600px;
    bottom: 50px;
    z-index: 100;
    width: 600px;
    height: auto;
    max-width: 85vw;
    padding: 20px;
    box-sizing: border-box;
    max-height: 85vh;
    overflow: auto;
    background: rgba(155, 0, 0, 1);
    background: linear-gradient(132deg, rgba(155, 0, 0, 1) 54%, rgba(108, 0, 0, 1) 100%);
	transition: all 0.6s;
}

#newsletter_form.active{
	right: 50px;
}

#newsletter_form .close{
	position: absolute;
	right: 15px;
	top: 15px;
	height: 20px;
	width: 20px;
	z-index: 10;
	background-image: url(images/icon-delete-white.svg);
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	cursor: pointer;
}

#newsletter_form p{
	color: #fff;
	margin: 0;
	font-size: 14px;
	line-height: 19px;
}

#newsletter_form p.title{
	color: #fff;
    font-size: 24px;
    line-height: 31px;
    text-tranform: uppercase;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 12px;
}

#newsletter_form form{
	margin-top: 20px;
}

#newsletter_form input[type="text"]{
	border: 1px solid #fff;
    background-color: transparent;
    padding: 15px 10px;
    box-sizing: border-box;
    vertical-align: middle;
    width: 250px;
    font-size: 14px;
    color: #fff;
	border-radius: 0;
}

#newsletter_form input[type="text"]::placeholder{
	color: #fff;
}

#newsletter_form input[type="submit"]{
	margin-left: 10px;
	background-color: #fff;
	border: 1px solid #fff;
	color: #9b0000;
	font-size: 14px;
	padding: 15px 10px 15px 35px;
	font-weight: 600;
	text-transform: uppercase;
	background-image: url(images/icon-send.svg);
	background-size: 18px;
	background-repeat: no-repeat;
	background-position: left 9px center;
	border-radius: 0;
	cursor: pointer;
}

/* ***** COOKIE CONSENT ***** */

#cookieChoiceInfo{
	box-sizing: border-box;
}

body .termsfeed-com---nb-simple{
	right: unset;
    top: unset;
    bottom: 50px;
	left: 50px;
    width: unset;
    position: fixed;
	animation: cookie 0.6s linear;
	animation-delay: 3s;
	animation-fill-mode: forwards;
	opacity: 0;
}

@keyframes cookie {
  0% { left: -600px; opacity: 0; }
  100% { left: 50px; opacity: 1; }
}

body .termsfeed-com---palette-light.termsfeed-com---nb{
	background-color: #f3f3f3;
	border-radius: 6px;
	overflow: hidden;
	border: 1px solid #dcdcdc;
}

body .termsfeed-com---palette-light.termsfeed-com---nb:after{
	content: '';
	position: absolute;
	right: 37px;
	top: 13px;
	width: 80px;
	height: 71px;
	background-image: url(images/icon-cookie.svg);
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}

body .termsfeed-com---nb .cc-nb-title{
	margin-bottom: 29px;
}

body .termsfeed-com---nb .cc-nb-text{
	font-size: 14px;
}

body .termsfeed-com---nb .cc-nb-main-container{
	padding: 0;
}

body .termsfeed-com---reset button{
	background-color: #f3f3f3;
	border-top: 1px solid #dcdcdc;
}

body .termsfeed-com---reset button+button+button{
	border-left: 1px solid #dcdcdc;
}

body .cc-nb-title-container{
	padding: 30px 20px 0;
}

body .cc-nb-text-container{
	padding: 0 20px 10px;
}

body .termsfeed-com---nb .cc-nb-okagree, body .termsfeed-com---nb .cc-nb-reject, body .termsfeed-com---nb .cc-nb-changep{
	margin: 0!important;
}

.cc-nb-buttons-container{
	display: flex!important;
}

body .termsfeed-com---nb .cc-nb-okagree, body .termsfeed-com---nb .cc-nb-reject{
	flex: 1;
}