/*
*
* Boutique v.2
* modification UX et design pour une version 2 de la refonte des boutiques
*
* - Header
*
* Breakpoint :
* - 480px
* - 768px
* - 829px Breakpoint chelou en JS (collapse JS sur header)
* - 992px
* - 1200px
*
**/

/*----------  Typo  ----------*/

/*@font-face {*/
/*	font-family: "Roboto";*/
/*	font-weight: normal;*/
/*	font-style: normal;*/
/*	src: url(https://boutique.welogin.fr/fonts/Roboto-Regular.ttf);*/
/*}*/

/*@font-face {*/
/*	font-family: "Roboto";*/
/*	font-weight: bold;*/
/*	font-style: normal;*/
/*	src: url(https://boutique.welogin.fr/fonts/Roboto-Bold.ttf);*/
/*}*/

/*@font-face {*/
/*	font-family: "Roboto";*/
/*	font-weight: normal;*/
/*	font-style: italic;*/
/*	src: url(https://boutique.welogin.fr/fonts/Roboto-Italic.ttf);*/
/*}*/

/*@font-face {*/
/*	font-family: "Roboto";*/
/*	font-weight: bold;*/
/*	font-style: italic;*/
/*	src: url(https://boutique.welogin.fr/fonts/Roboto-BoldItalic.ttf);*/
/*}*/


/*=====  FIN Config  =====*/


/*==========================
=            Reset            =
==========================*/

html {
	font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
	min-height: 100%;
	max-width: 100vw;
}

body {
	font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
	min-height: 100%;
	color: var(--color-txt);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	max-width: 100vw;
}

img {
	max-width: 100%;
	height: auto;
}

svg {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

a:hover {
	text-decoration: underline;
	outline: none;
}

a:focus {
	text-decoration: underline;
	outline: none;
}

select[name^="idd"] option {
	background-color: unset !important;
	background-image: unset !important;
}

/*----------  Helpers  ----------*/

.visible_mobile {
	display: none;
}


/*----------  BTN  ----------*/

.btn, .btn.btn-default {
	position: relative;
	background-color: var(--color-secondary);
	border-color: var(--color-secondary);
	color: #fff;
	font-weight: 700;
	line-height: 1.05;
	text-transform: uppercase;
	padding: 8px 20px !important;
	transition: all 0.2s linear;
}

.btn a, .btn.btn-default a {
	color: #fff;
	text-decoration: none;
}

.btn a:hover, .btn.btn-default a:focus {
	text-decoration: none;
}

.btn:hover, .btn.btn-default:hover,
.btn:focus, .btn.btn-default:focus,
.btn:active, .btn.btn-default:active {
	background-color: var(--color-secondary) !important;
	border-color: var(--color-secondary) !important;
	color: #fff;
	text-decoration: none;
}

.btn:hover a, .btn.btn-default:hover a,
.btn:focus a, .btn.btn-default:focus a {
	color: #fff;
	text-decoration: none;
}

/* Avec Icone */
.btn svg {
	width: auto !important;
	height: 14px;
}

/* .btn svg:first-child {
  margin-right: 10px;
}
.btn svg:last-child {
  margin-left: 10px;
} */

.nombre_produits {
	display: inline-block;
	min-width: 10px;
	padding: 3px 7px;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	background-color: #777;
	border-radius: 10px;
}

.btn .badge,
.nombre_produits {
	position: absolute;
	right: -10px;
	top: -10px;
	font-weight: 400;
	background-color: var(--color-alert);
}

.btn.is-check:before {
	content: "";
	position: absolute;
	top: 3px;
	right: 3px;
	bottom: 3px;
	left: 3px;
	border-radius: 3px;
	border: 1px solid #fff;
}

.btn.is-check:after {
	content: "";
	position: absolute;
	top: -6px;
	right: -5px;
	width: 16px;
	height: 16px;
	background-color: var(--color-success);
	background-image: var(--svg-check);
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: 10px auto;
	border-radius: 50%;
	overflow: hidden;
	box-shadow: -3px 3px 6px rgba(0, 0, 0, 0.16);
}

.btn.disabled, .btn[disabled] {
	background-color: var(--color-gray-2);
	border: 0;
	cursor: no-drop;
	opacity: 1;
	filter: none;
}

/*=====  FIN Reset  =====*/

/*==========================
=            Général            =
==========================*/
body {
	/* Correction du scroll suite au calcul du footer*/
	overflow-x: hidden;
}

/**/

/*=====  FIN Général  =====*/


/*==========================
=            header            =
==========================*/

/*----------  Général  ----------*/

.navbar {
	position: relative;
	z-index: 1030;
	background-color: var(--color-bg);
	border-bottom: 1px solid var(--color-gray-1);
	margin-bottom: 0;
	min-height: 0;
}

@media (min-width: 768px) {
	.navbar {
		position: fixed;
		top: 0;
		width: 100%;
		right: 0;
		left: 0;
	}
}

.navbar > .container {
	display: flex;
	align-items: center;
	height: 60px;
	width: 100% !important;
}

.container-fluid > .navbar-collapse,
.container-fluid > .navbar-header,
.container > .navbar-collapse,
.container > .navbar-header {
	margin-left: 0;
	margin-right: 0;
}

@media (min-width: 768px) {
	.navbar > .container {
		height: var(--header-height);
		transition: all 200ms linear;
	}

	.is-header-fixed .navbar > .container {
		height: var(--header-height-fixed);
	}
}

.navbar-default .navbar-brand {
	max-width: 180px;
	margin-left: 0 !important;
	margin-right: auto !important;
	padding: 0;
	position: static;
	top: 0;
	display: block !important; /* virer les hidden sur la navbar-brand : hidden-xs hidden-sm hidden-md */
	height: auto;
}

.navbar-brand img {
	height: 50px;
	width: auto;
}

@media (min-width: 768px) {
	.navbar-brand img {
		height: calc(var(--header-height) - 10px);
		transition: all 200ms linear;
	}

	.is-header-fixed .navbar-brand img {
		height: calc(var(--header-height-fixed) - 6px);
	}
}

#infos_panier_incafu {
	display: none;
}

#lien_panier_incafu {
	position: relative;
}

/*----------  Nav mobile  ----------*/
#navbar-mobile-visible {
	order: 1;
}

@media (min-width: 992px) {
	#navbar-mobile-visible {
		display: none;
	}
}

.navbar-default .navbar-header {
	display: flex !important;
	align-items: center;
	flex: 1;
}

#icones-navbar {
	order: 1;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

@media (min-width: 992px) {
	#icones-navbar {
		display: none;
	}
}

#icone-panier, #icone-connexion, #icone-mon-compte, #icone-deconnexion {
	position: relative;
	background-color: transparent !important;
	color: var(--color-primary);
	border: 0;
	width: 40px;
	height: 40px;
	padding: 0 !important;
	display: flex;
	align-items: center;
	justify-content: center;
}

#icone-panier svg, #icone-connexion svg, #icone-mon-compte svg, #icone-deconnexion svg {
	height: 20px;
}

@media (min-width: 992px) {
	#icone-connexion {
		margin-left: 30px;
	}
}

.temps_expiration_panier {
	border: 2px solid var(--color-secondary);
	display: flex;
	align-items: center;
	color: var(--color-secondary);
	font-weight: 700;
	border-radius: 4px;
	padding: 2px 5px;
}

#panier_incafu .temps_expiration_panier {
	border-radius: 4px 0 0 4px;
	height: 32px;
	padding: 2px 18px 2px 10px;
	margin-right: -10px;
}

/* Switchlang Mobile */
#navbar-mobile-visible .navbar-nav {
	margin: 0;
}

/* Bon plan Mobile */

.filter-grid > a {
	display: inline-block;
	padding: 6px 12px;
	margin-bottom: 0;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.42857143;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	-ms-touch-action: manipulation;
	touch-action: manipulation;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	background-image: none;
	border: 1px solid transparent;
	border-radius: 4px;
	background-color: var(--color-secondary);
	border-color: var(--color-secondary);
	color: #fff;
	font-weight: 700;
	line-height: 1.05;
	text-transform: uppercase;
	padding: 8px 20px !important;
	transition: all 0.2s linear;
}

.btn-discount,
.filter-grid > a {
	display: none;
	background-color: transparent;
	color: var(--color-secondary);
}

.btn-discount svg,
.filter-grid > a svg {
	margin-right: 10px;
}

.btn-discount:hover, .btn-discount:focus,
.filter-grid > a:hover, .filter-grid > a:focus {
	background-color: var(--color-secondary);
	color: #fff;
}

@media (min-width: 768px) {
	.btn-discount,
	.filter-grid > a {
		display: inline-block;
		margin-right: 30px;
	}

	#recherche_boutique .btn-discount,
	#recherche_boutique .filter-grid > a {
		display: none;
	}
}

@media (min-width: 992px) {
	.btn-discount,
	.filter-grid > a {
		margin-right: 30px;
	}
}

@media (min-width: 992px) {
	.navbar-header .btn-discount {
		display: none;
	}

	.btn-discount,
	.filter-grid > a {
		order: -1;
		margin-right: 40px;
	}
}

/*----------  Switch Lang  ----------*/

.container-langue {
	position: relative;
	vertical-align: middle;
	cursor: pointer;
	min-width: 48px;
	border: 1px solid var(--color-primary);
	border-radius: 4px;
	margin-left: 15px;
	padding: 5px;
}

@media (min-width: 992px) {
	.container-langue {
		margin-left: 30px;
	}
}

.langue img, .selection_langue img {
	display: none;
}

.selection_langue li {
	margin-left: -5px;
}

.navbar .selection_langue {
	position: absolute;
	top: 104%;
	left: 0;
	width: 100%;
	display: none;
	list-style-type: none;
	margin: 0;
	padding: 0;
	overflow: hidden;
	border: 1px solid var(--color-primary);
	border-top: none;
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
}

.navbar .selection_langue li {
	background: #fff;
	padding: 5px;
	text-align: center;
}

.navbar .selection_langue li:hover {
	background: var(--color-gray-1);
}

/*----------  Nav Desktop  ----------*/

#navbar {
	display: none !important;
}

@media (min-width: 992px) {
	#navbar {
		display: block !important;
	}
}

#temps_restant_avant_expiration_panier_incafu {
	display: none;
}

.navbar #bouton_connexion {
	margin-left: 15px;
	background-color: transparent;
	border-color: transparent;
	color: var(--color-primary);
	position: relative;
}

.navbar #bouton_connexion a {
	color: var(--color-primary);
}

.navbar #bouton_connexion:hover, .navbar #bouton_connexion:focus {
	color: var(--color-secondary);
	border-color: var(--color-secondary);
	background-color: transparent;
}

.navbar #bouton_connexion:hover a, .navbar #bouton_connexion:focus a {
	color: var(--color-bg);
}

/* Correction clic bouton connexion */
.navbar #bouton_connexion {
	padding: 0;
}

.navbar #bouton_connexion > a {
	/** padding: 8px 20px; **/
	display: block;
}

/* Correction clic bouton connexion : fin */

#lien_mon_compte a {
	margin-left: 15px;
	background-color: transparent;
	border-color: var(--color-primary);
	color: var(--color-primary);
	position: relative;
	border-radius: 4px 0 0 4px;
	height: 33px;
}

#lien_mon_compte a:hover, #lien_mon_compte a:focus {
	color: var(--color-secondary);
	border-color: var(--color-secondary);
	background-color: transparent !important;
}

#bouton_deconnexion {
	display: flex;
	padding: 0 !important;
	text-indent: -5000px;
	width: 33px;
	height: 33px;
	border-radius: 0 4px 4px 0;
	border-color: var(--color-primary);
	background-color: var(--color-primary);
	background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNC4yMyIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE0LjIzIDE2Ij4KICA8cGF0aCBkPSJNNy4xMSwxNmMtMS40OSwwLTIuOTQtLjQ3LTQuMTUtMS4zNC0xLjIxLS44Ny0yLjEyLTIuMS0yLjU5LTMuNTEtLjQ3LTEuNDEtLjQ5LTIuOTQtLjA1LTQuMzYsLjQ0LTEuNDIsMS4zMS0yLjY3LDIuNS0zLjU3LC4yMS0uMTYsLjQ5LS4yLC43NC0uMDksLjI1LC4xLC40MiwuMzMsLjQ1LC41OSwuMDMsLjI2LS4wOCwuNTMtLjI5LC42OS0uOTQsLjcxLTEuNjMsMS43LTEuOTgsMi44Mi0uMzUsMS4xMy0uMzMsMi4zMywuMDQsMy40NSwuMzgsMS4xMiwxLjA5LDIuMDksMi4wNSwyLjc3LC45NiwuNjksMi4xLDEuMDYsMy4yOCwxLjA2czIuMzItLjM3LDMuMjgtMS4wNmMuOTYtLjY5LDEuNjctMS42NiwyLjA1LTIuNzdzLjM5LTIuMzIsLjA0LTMuNDVjLS4zNS0xLjEzLTEuMDQtMi4xMS0xLjk4LTIuODItLjE2LS4xMi0uMjYtLjMtLjI5LS40OS0uMDMtLjIsLjAzLS4zOSwuMTQtLjU1LC4xMi0uMTYsLjMtLjI2LC40OS0uMjksLjItLjAzLC4zOSwuMDMsLjU1LC4xNCwxLjE5LC45LDIuMDYsMi4xNSwyLjUsMy41NywuNDQsMS40MiwuNDIsMi45NS0uMDYsNC4zNi0uNDcsMS40MS0xLjM4LDIuNjQtMi41OSwzLjUxLTEuMjEsLjg3LTIuNjYsMS4zNC00LjE1LDEuMzRoMFoiIGZpbGw9IiNmZmYiLz4KICA8cGF0aCBkPSJNNy4xMSw4LjM2Yy0uMiwwLS4zOS0uMDgtLjUzLS4yMi0uMTQtLjE0LS4yMi0uMzMtLjIyLS41M1YuNzVjMC0uMjcsLjE0LS41MSwuMzctLjY1cy41MS0uMTMsLjc1LDAsLjM3LC4zOCwuMzcsLjY1VjcuNjFjMCwuMi0uMDgsLjM5LS4yMiwuNTMtLjE0LC4xNC0uMzMsLjIyLS41MywuMjJoMFoiIGZpbGw9IiNmZmYiLz4KPC9zdmc+');
	background-position: center;
	background-size: auto 16px;
	background-repeat: no-repeat;
}

#bouton_deconnexion:hover, #bouton_deconnexion:focus {
	color: var(--color-alert);
	border-color: var(--color-alert);
	background-color: var(--color-alert);
}

span#bouton_deconnexion > a {
	width: 100%;
}


@media (min-width: 992px) {
	.navbar .navbar-right {
		margin-right: 0;
	}
}

@media (min-width: 829px) {

	#panier_incafu {
		display: flex;
		align-items: center;
	}

	.navbar .navbar-right {
		display: flex;
		align-items: center;
	}

	.navbar-default .navbar-collapse {
		margin-left: auto;
	}
}

@media (min-width: 992px) {
	.navbar #bouton_connexion, #lien_mon_compte a {
		margin-left: 30px;
	}
}

/*=====  FIN header  =====*/


/*==========================
=            Main            =
==========================*/

main {
	padding-top: 30px;
}

@media (min-width: 768px) {
	main { /* Fixed : header height */
		margin-top: calc(var(--header-height));
		transition: all 200ms linear;
		/*height: calc(100% - var(--header-height) - 60px);*/
		height: auto;
		min-height: calc(100vh - var(--header-height) - 60px);
	}

	.is-header-fixed main { /* Fixed : header height */
		margin-top: calc(var(--header-height-fixed) + 1px);
	}
}

@media (min-width: 992px) {
	main {
		padding-left: 301px;
		padding-top: 10px;
	}

	main[data-page="fp"] {
		padding-left: 0px;
	}

	main > .container {
		width: 100%;
	}

	.is-cart main > .container,
	.is-account main > .container {
		width: 970px;
	}

	.is-cart main,
	.is-account main {
		padding: 0;
	}
}

@media (min-width: 1170px) {
	body:not(.is-cart):not(.is-account) main > .container {
		padding-left: 30px;
	}
}

@media (min-width: 1200px) {
	.is-cart main > .container,
	.is-account main > .container {
		width: 1170px;
	}
}

@media (min-width: 1300px) {
	body:not(.is-cart):not(.is-account) main > .container {
		padding-left: 30px;
		padding-right: 30px;
		max-width: 1240px;
	}
}

@media (min-width: 1530px) {
	body:not(.is-cart):not(.is-account) main > .container {
		padding-left: 0;
		padding-right: 0;
		max-width: 1170px;
	}
}

main > .container > .row {
	margin: 0;
}

#panneau_central_boutique_web_incafu {
	display: flex;
	flex-direction: column;
	width: 100%;
	min-height: calc(100vh - 30px - 55px - var(--header-height)); /* 100vh - mb - heightFooter - headerHeight */
}

body:not(.is-product) #panneau_central_boutique_web_incafu {
	/*margin-bottom: 30px;*/
	margin-bottom: 19px;
	/* min-height: calc( 100vh - 30px - 55px - var(--header-height) ); */
}

@media (min-width: 768px) {
	#panneau_central_boutique_web_incafu {
		min-height: calc(100vh - 70px - 55px - var(--header-height));
	}

	body:not(.is-product) #panneau_central_boutique_web_incafu {
		/*margin-bottom: 70px;*/
		margin-bottom: 69px;
		/* min-height: calc( 100vh - 70px - 55px - var(--header-height) ); */
	}
}

@media (min-width: 991px) {
	body:not(.is-product) #panneau_central_boutique_web_incafu {
		margin-bottom: 59px;
	}
}

main[data-page="fp"] #panneau_central_boutique_web_incafu {
	/*display: none;*/
	width: 100%;
}

/*=====  FIN Main  =====*/

/*==========================
=            Footer            =
==========================*/

#footer {
	color: #fff;
	background-color: var(--color-primary);
	margin-left: -15px;
	margin-right: -15px;
	padding-top: 5px;
	padding-bottom: 5px;
}

#footer .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-left: 0;
	padding-right: 0;
}

/*#footer .container {*/
/*  width:100%;*/
/*}*/

/*@media (min-width: 768px) {*/
/*  #footer {*/
/*    width: calc( 100% - 300px );*/
/*  }*/

/*}*/
@media (min-width: 768px) {
	#footer {
		margin-left: calc(-100vw / 2 + 720px / 2);
		margin-right: calc(-100vw / 2 + 720px / 2);
	}
}

@media (min-width: 992px) {
	#footer {
		margin-left: calc(-100vw / 2 + 940px / 2);
		margin-right: calc(-100vw / 2 + 940px / 2);
	}

	body:not(.is-cart):not(.is-account) #footer {
		margin-left: -15px;
		margin-right: -15px;
	}

	body:not(.is-cart):not(.is-account) #footer .container {
		width: 100% !important;
	}
}

@media (min-width: 1170px) {
	#footer {
		/*margin-left: calc(-100vw / 2 + 940px / 2);*/
		/*margin-right: calc(-100vw / 2 + 940px / 2);*/
	}

	body:not(.is-cart):not(.is-account) #footer {
		margin-left: -30px;
		margin-right: -30px;
	}

	body:not(.is-cart):not(.is-account) #footer .container {
		width: 100% !important;
	}
}

/*}*/
/*@media (min-width: 1200px) {*/
/*	#footer {*/
/*		margin-left: calc(-100vw / 2 + 1140px / 2);*/
/*		margin-right: calc(-100vw / 2 + 1140px / 2);*/
/*	}*/

/*	body:not(.is-cart):not(.is-account) #footer {*/
/*		margin-left: -15px;*/
/*		margin-right: -15px;*/
/*	}*/
/*}*/

@media (min-width: 1300px) {
	body:not(.is-cart):not(.is-account) #footer {
		margin-left: -30px;
		margin-right: -30px;
	}
}

@media (min-width: 1530px) {
	body:not(.is-cart):not(.is-account) #footer {
		margin-left: calc(-100vw / 2 + 1471px / 2);
		margin-right: calc(-100vw / 2 + 1471px / 2);
	}
}

#footer a, #footer a:hover, #footer a:focus {
	color: #fff;
}

#footer_logo_welogin img {
	max-width: 90px;
}

#footer a + a {
	margin-left: 20px;
}

main[data-page="fp"] footer#footer {
	width: 100% !important;
	position: absolute;
	left: 0;
	right: 0;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/*=====  FIN Footer  =====*/

/*==========================
=            Page Title            =
==========================*/

.page-title {
	order: -1;
	margin-bottom: 25px;
}

.page-title h1 {
	margin: 0;
}

@media (min-width: 768px) {
	.page-title {
		order: inherit;
		margin-bottom: 30px;
	}
}

@media (min-width: 992px) {
	.page-title {
		margin-bottom: 35px;
	}
}

/*=====  FIN Page Title  =====*/

/*==========================
=            breadcrumb            =
==========================*/

.fil_ariane {
	padding: 0;
	background-color: transparent;
	border-radius: 0;
	margin-bottom: 20px;
	list-style: none;
	color: var(--color-gray-3);
}

.fil_ariane a {
	color: inherit;
}

.fil_ariane > .bon_plan_ariane {
	display: none;
}

/*=====  FIN breadcrumb  =====*/

/*==========================
=            Filters            =
==========================*/

#annuler_recherche {
	display: none;
}

#recherche_boutique {
	margin-left: 0;
}

@media (min-width: 768px) {
	#recherche_boutique {
		order: -1;
	}
}

@media (min-width: 992px) {
	#recherche_boutique {
		position: fixed;
		top: calc(var(--header-height) + 1px);
		left: 0;
		width: var(--recherche-width);
		height: calc(100% - var(--header-height) + 1px);
		background-color: #fff;
		z-index: 1;
		border-right: 1px solid var(--color-gray-1);
		transition: all 200ms linear;
	}

	.is-header-fixed #recherche_boutique {
		top: calc(var(--header-height-fixed) + 1px);
		height: calc(100% - var(--header-height-fixed) + 1px);
	}
}

main[data-page="fp"] #recherche_boutique {
	display: none;
}

.filter-grid {
	display: flex;
	align-items: stretch;
	justify-content: stretch;
}

.filter-grid .btn-discount,
.filter-grid > a {
	display: block;
	margin-left: 15px;
	width: 100%;
	flex: 1;
}

@media (min-width: 768px) {
	.filter-grid {
		display: none;
	}
}

.filter-toggle {
	width: 100%;
	flex: 1;
}

#bandeau_recherche {
	z-index: 1;
	position: relative;
	max-height: 0;
	overflow: hidden;
	transition: all .25s linear;
	background-color: var(--color-gray-1);
	border-radius: 10px;
	padding: 0;
	margin-top: 0;
}

#bandeau_recherche.open {
	max-height: 1000px;
	margin-top: 10px;
	padding: 20px 10px;
}

@media (min-width: 768px) {
	#bandeau_recherche, #bandeau_recherche.open {
		max-height: none;
		padding: 24px 0;
		margin-top: 0;
		margin-left: calc(-100vw / 2 + 720px / 2);
		margin-right: calc(-100vw / 2 + 720px / 2);
	}

	#bandeau_recherche {
		overflow: visible;
		background-color: transparent;
		border-radius: 0;
		box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
	}
}

@media (min-width: 992px) {
	/* #bandeau_recherche, #bandeau_recherche.open {
	  margin-left: calc(-100vw / 2 + 940px / 2);
	  margin-right: calc(-100vw / 2 + 940px / 2);
	} */
	#bandeau_recherche, #bandeau_recherche.open {
		margin: 0;
		padding: 0;
		box-shadow: none;
		overflow-y: auto;
		height: 100%;
		-ms-overflow-style: none; /* IE and Edge */
		scrollbar-width: none; /* Firefox */
	}

	#bandeau_recherche::-webkit-scrollbar {
		display: none;
	}
}

@media (min-width: 1200px) {
	#bandeau_recherche, #bandeau_recherche.open {
		margin: 0;
	}
}

#conteneur_champs_recherche {
	margin: 0;
}

@media (min-width: 768px) {
	#conteneur_champs_recherche {
		max-width: 1200px;
		padding: 0 15px;
		margin-left: auto;
		margin-right: auto;
		display: flex;
		align-items: center;
	}
}

@media (min-width: 992px) {
	#conteneur_champs_recherche {
		padding: 0;
		flex-direction: column;
	}
}

#recherche_produits_tags, #recherche_produits_dates {
	padding-right: 15px;
}

@media (min-width: 768px) {
	#recherche_produits_tags {
		margin-right: 15px;
	}
}

@media (min-width: 992px) {
	#recherche_produits_tags {
		margin-right: 0;
	}
}

/*----------  Tags  ----------*/

#recherche_produits_tags {
	padding: 0;
	margin-bottom: 20px;
}

@media (min-width: 768px) {
	#recherche_produits_tags {
		width: auto;
		margin-bottom: 0;
	}
}

@media (min-width: 992px) {
	#recherche_produits_tags {
		width: 100%;
	}
}

#recherche_produits_tags .hidden-lg {
	display: none;
}

#recherche_produits_tags > div {
	position: relative;
}

.recherche_tags-container {
	position: relative;
	width: 100%;
}

.recherche_tags-container svg.svg-inline--fa {
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%) rotate(-90deg);
	transition: all 0.2s linear;
	color: var(--color-secondary);
	width: 22px;
	height: 22px;
}

#recherche_produits_tags.open .recherche_tags-container svg.svg-inline--fa {
	transform: translateY(-50%) rotate(0);
}

#recherche_produits_tags.open div#liste_choix_tags::after,
#recherche_produits_tags.open div#liste_choix_tags::before {
	display: none;
}

.recherche_tags {
	text-align: left;
	font-size: 16px;
	text-transform: uppercase;
	font-weight: 700;
	height: 40px;
	padding-right: 30px;
}

#recherche_tags + svg {
	cursor: pointer;
}

@media (min-width: 768px) {
	.recherche_tags-container svg.svg-inline--fa {
		width: 14px;
		height: 14px;
	}

	.recherche_tags {
		font-size: 14px;
		text-transform: none;
		font-weight: 400;
	}
}

@media (min-width: 992px) {
	.recherche_tags-container {
		border-bottom: 1px solid var(--color-gray-1);
	}

	.recherche_tags,
	.recherche_tags:hover,
	.recherche_tags:focus {
		width: 100% !important;
		border: 0;
		border-radius: 0;
		font-size: 16px;
		text-transform: uppercase;
		font-weight: 700;
		height: 50px;
	}

	.recherche_tags-container svg.svg-inline--fa {
		width: 18px;
		height: 18px;
	}
}

#liste_choix_tags::before, #liste_choix_tags::after,
#recherche_produits_tags.open #liste_choix_tags::before, #recherche_produits_tags.open #liste_choix_tags::after {
	display: none;
}

#recherche_produits_tags.open div#liste_choix_tags {
	position: static;
	z-index: 0;
	max-width: 100%;
	min-width: auto;
	background-color: #fff;
	border-radius: 4px;
	border: 1px solid #ccc;
	margin-top: 0;
}

@media (min-width: 768px) {
	#recherche_produits_tags.open div#liste_choix_tags {
		position: absolute;
		min-width: 220px;
	}
}

#tags ul.tags li.tag {
	padding: 4px 0;
}

#tags ul.tags li.tag a {
	color: var(--color-primary);
}

#tags ul.tags li.tag a:hover {
	text-decoration: none;
}

#tags ul.tags li.tag a * {
	font-size: 14px;
}

#tags ul.tags li.tag a input.tg {
	margin-right: 10px;
}

@media (min-width: 992px) {
	#recherche_produits_tags.open div#liste_choix_tags {
		position: static;
		border-radius: 0;
		border: 0;
	}

	#tags ul.tags {
		margin-top: 0;
	}
}

/*----------  Recherche  ----------*/

#recherche_produit_groupe {
	display: block;
	position: relative;
	margin-bottom: 20px;
	height: 40px;
}

@media (min-width: 768px) {
	#recherche_produit_groupe {
		margin-left: auto;
		order: 3;
		margin-bottom: 0;
	}
}

@media (min-width: 992px) {
	#recherche_produit_groupe {
		position: sticky;
		top: 0;
		z-index: 1;
	}
}

#recherche_produit {
	display: block;
	width: 100%;
	border: 1px solid var(--color-gray-2);
	border-radius: 8px;
	height: 40px;
	padding-left: 40px;
}

#recherche_produit {
	z-index: 0;
}

#recherche_produit_groupe .input-group-btn {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

#lancer_recherche {
	padding: 0 !important;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: transparent;
	border: 0;
	color: var(--color-secondary);
	width: 40px;
	height: 40px;
}

#lancer_recherche:hover {
	color: white;
}

@media (min-width: 992px) {
	#recherche_produit_groupe {
		width: 100%;
		order: -1;
		height: auto;
	}

	#recherche_produit {
		height: 52px;
		border-radius: 0;
		border-top: 0;
		border-left: 0;
		border-right: 0;
		border-bottom: 1px solid var(--color-gray-1);
		padding-left: 50px;
	}

	#lancer_recherche {
		height: 50px;
		width: 50px;
	}
}

/*----------  Cat Nav  ----------*/

.cat-nav {
	margin-bottom: 20px;
}

.cat-nav-toggle, .recherche_date-toggle {
	position: relative;
	height: 40px;
	width: 100%;
	border-radius: 4px;
	border: 1px solid var(--color-gray-2);
	background-color: #fff;
	text-align: left;
	font-size: 16px;
	text-transform: uppercase;
	font-weight: 700;
	height: 40px;
	padding: 6px 30px 6px 12px;
}

.cat-nav-toggle svg.svg-inline--fa, .recherche_date-toggle svg.svg-inline--fa {
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%) rotate(-90deg);
	transition: all 0.2s linear;
	color: var(--color-secondary);
	width: 22px;
	height: 22px;
}

.cat-nav.open svg.svg-inline--fa, .recherche_date-container.open svg.svg-inline--fa {
	transform: translateY(-50%) rotate(0);
}

.cat-nav-content, .recherche_date-content {
	display: none;
	max-width: 100%;
	min-width: auto;
	background-color: #fff;
	border-radius: 4px;
	border: 1px solid #ccc;
	margin-top: 0;
	padding: 10px 15px;
}

.cat-nav.open .cat-nav-content, .recherche_date-container.open .recherche_date-content {
	display: block;
}

@media (min-width: 768px) {
	.cat-nav, .recherche_date-container {
		position: relative;
		margin-bottom: 0;
		margin-right: 15px;
	}

	.cat-nav-toggle, .recherche_date-toggle {
		font-weight: 400;
		font-size: 14px;
		text-transform: none;
	}

	.cat-nav-toggle svg.svg-inline--fa, .recherche_date-toggle svg.svg-inline--fa {
		width: 14px;
		height: 14px;
	}

	.cat-nav-content, .recherche_date-content {
		position: absolute;
		top: 100%;
		left: 0;
		min-width: 220px;
	}

	.recherche_date-content {
		min-width: 300px;
	}
}

@media (min-width: 992px) {
	.cat-nav,
	.recherche_date-container {
		margin-right: 0;
		width: 100%;
	}

	.cat-nav-toggle {
		display: none;
	}

	.cat-nav-content,
	.recherche_date-content {
		position: static;
		min-width: 0;
		width: 100%;
		display: block;
		border-left: 0;
		border-right: 0;
		border-top: 0;
		border-radius: 0;
		border-bottom: 1px solid var(--color-gray-1);
	}

	.recherche_date-content {
		display: none;
		border-bottom: 0;
	}

	.recherche_date-container.open .recherche_date-content {
		display: block;
	}

	.recherche_date-toggle {
		width: 100% !important;
		border: 0;
		border-radius: 0;
		font-size: 16px;
		text-transform: uppercase;
		font-weight: 700;
		height: 50px;
	}

	.recherche_date-container svg.svg-inline--fa {
		width: 18px;
		height: 18px;
	}
}

/* titres nav */
#bandeau_recherche input#recherche_tags,
#bandeau_recherche button.recherche_date-toggle,
.cat-nav-link {
	color: var(--color-primary);
}

/*----------  Cat nav List  ----------*/

.cat-nav-list {
	padding: 0;
	list-style: none;
	margin: 0;
}

.cat-nav-link {
	display: block;
	width: 100%;
	text-align: left;
	padding: 2px 0;
}

.cat-nav-link:hover, .is-active > .cat-nav-link {
	color: var(--color-secondary);
	text-decoration: none;
}

.cat-nav-link:focus {
	color: var(--color-secondary);
	outline: none;
	text-decoration: none;
}

.cat-nav-link_l1,
.cat-defaut.cat-nav-item_l2 .cat-nav-link_l2 {
	font-weight: 700;
	font-size: 16px;
	border: 0;
	box-shadow: none;
	background-color: transparent;
	border-radius: 0;
	padding: 6px 0;
}

.is-parent > .cat-nav-link_l1 {
	position: relative;
	padding-right: 15px;
}

.is-parent > .cat-nav-link_l1:before {
	content: "+";
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	color: var(--color-gray-2);
}

.is-parent > .cat-nav-link_l1:hover,
.is-open > .cat-nav-link_l1,
.cat-defaut.cat-nav-item_l2.is-open > .cat-nav-link_l2 {
	color: var(--color-secondary);
}

.is-parent > .cat-nav-link_l1:hover:before, .is-open > .cat-nav-link_l1:before, .is-active > .cat-nav-link_l1:before {
	color: var(--color-secondary);
}

.cat-nav-list_l2 {
	padding: 0 0 3px 15px;
	list-style: none;
	display: none;
}

.is-open > .cat-nav-list_l2 {
	display: block;
}

.cat-nav-list_l2 .is-open {
	color: var(--color-secondary);
}

/*----------  Recherche date  ----------*/

#recherche_produits_dates {
	padding: 0;
}

@media (min-width: 768px) {
	#recherche_produits_dates {
		width: auto;
		flex: 1;
	}

	#recherche_produits_dates > div {
		display: flex;
		align-items: center;
		width: 100%;
	}
}

@media (min-width: 992px) {
	#recherche_produits_dates {
		width: 100%;
	}

	#recherche_produits_dates > div {
		flex-direction: column;
		width: 100%;
	}
}

#recherche_date {
	display: none;
	/* height: 40px;
	cursor: pointer;
	font-weight: 700;
	text-transform: uppercase;
	font-size: 16px;
	padding-right: 30px; */
}

@media (min-width: 768px) {
	/* #recherche_date {
	  font-weight: 400;
	  text-transform: none;
	  font-size: 14px;
	} */
}

@media (min-width: 992px) {
	/* body:not(.is-product) #recherche_date {
	  width: 100%;
	  border: 0;
	  border-radius: 0;
	  font-size: 16px;
	  text-transform: uppercase;
	  font-weight: 700;
	  height: 50px;
	} */
	#recherche_produits_dates {
		border-bottom: 1px solid var(--color-gray-1);
	}
}

/*----------  Datepicker  ----------*/

.recherche_date-content .daterangepicker {
	display: block !important;
	position: static;
	overflow: hidden;
	border: 0;
	margin-top: 0;
}

.recherche_date-content .daterangepicker:before,
.recherche_date-content .daterangepicker:after {
	display: none;
}

.recherche_date-content .daterangepicker .drp-calendar {
	padding: 0;
	float: none;
	clear: none;
	margin-left: auto;
	margin-right: auto;
}

.recherche_date-content .daterangepicker .drp-calendar.right {
	display: none;
}

.daterangepicker td.active,
.daterangepicker td.off.in-range.end-date,
.daterangepicker td.in-range.end-date,
.daterangepicker td.active:hover {
	background-color: var(--color-secondary);
	color: #fff;
}

.daterangepicker td.off.in-range,
.daterangepicker td.in-range {
	background-color: rgba(var(--color-secondary-rgb), 0.15);
}


/**
 * Datepicker fiche produit
 */
.datepicker--produit-date {
	max-width: 320px;
}

.datepicker--produit-date .ui-datepicker {
	width: 100%;
}

.datepicker--produit-date,
.datepicker--produit-date .ui-widget-content,
.datepicker--produit-date table.ui-datepicker-calendar {
	background-color: var(--datepicker-background);
}

.datepicker--produit-date,
.datepicker--produit-date .ui-datepicker {
	padding: 0;
	border-radius: 0 !important;
}

.datepicker--produit-date table.ui-datepicker-calendar {
	/*margin: 0 5px 5px;*/
}

.datepicker--produit-date .ui-datepicker-inline {
	border: none;
}

.datepicker--produit-date .ui-datepicker-header {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	flex-direction: row;
	justify-content: center;
	width: 100%;
	border: none;
	background-color: var(--datepicker-month-header);
	padding: 10px 0;
}

.datepicker--produit-date .ui-datepicker-title select.ui-datepicker-month {
	background-color: var(--datepicker-month-header);
	font-family: inherit;
	font-size: inherit !important;
	border: none !important;
}

.datepicker--produit-date .ui-datepicker .ui-datepicker-title {
	margin: 0;
	flex-grow: 1;
}


.datepicker--produit-date .ui-datepicker-header .ui-datepicker-prev,
.datepicker--produit-date .ui-datepicker-header .ui-datepicker-next {
	height: calc(100% - 4px);
}

/* todo changement des icônes gauche et droite */
.datepicker--produit-date .ui-datepicker-prev span, .ui-datepicker-next span {
	/*background-image: none !important;*/
}

/*.ui-datepicker-prev span.ui-icon {*/
/*	width: 6px;*/
/*	height: 16px;*/
/*	display: block;*/
/*	text-indent: 0;*/
/*	overflow: hidden;*/
/*	background-repeat: no-repeat;*/
/*}*/
/*.ui-datepicker-prev span:before {*/
/*	content: "\f104";*/
/*	font-family: FontAwesome;*/
/*	position: relative;*/
/*}*/
/*.ui-datepicker-prev:hover {*/
/*	color: #fff;*/
/*}*/

/*.datepicker--produit-date .ui-datepicker-header .ui-datepicker-prev span:before {*/
/*	content: "\f104";*/
/*	font-family: FontAwesome;*/
/*	position: relative;*/
/*}*/

/* Datepicker fiche produit: tous les jours */
.datepicker--produit-date td:not(.ui-datepicker-week-col) {
	background-color: var(--color-secondary);
	border-radius: 100%;
	border: none;
	position: relative;

	margin: 0.3em;
	opacity: 1;
}

.datepicker--produit-date td:not(.ui-datepicker-week-col) .ui-state-default {
	border-radius: 100%;
	background-color: var(--color-secondary);
	border: none;
	color: #000;
	text-align: center;
	/*height: 30px;*/
	/*width: 30px;*/

	display: flex;
	align-items: center;
	justify-content: center;
}


/* Datepicker fiche produit: jours non-sélectionnables */
.datepicker--produit-date td.ui-datepicker-unselectable,
.datepicker--produit-date td.ui-state-disabled,
.datepicker--produit-date td.ui-datepicker-unselectable .ui-state-default,
.datepicker--produit-date td.ui-state-disabled .ui-state-default {
	/* jours non-sélectionnables */
	background-color: transparent !important;
	border: none;
}


/* Datepicker fiche produit: les jours d'un autre mois */
.datepicker--produit-date td.ui-datepicker-other-month {
	opacity: 0.35;
}

/* Datepicker fiche produit: jours sélectionnables */
.datepicker--produit-date td:not(.ui-datepicker-week-col):not(.ui-datepicker-unselectable):not(.ui-state-disabled),
.datepicker--produit-date td:not(.ui-datepicker-week-col):not(.ui-datepicker-unselectable):not(.ui-state-disabled) .ui-state-default {
	color: #fff;
}


/* Datepicker fiche produit: jours sélectionnés */
.datepicker--produit-date .ui-datepicker-current-day {
}

.datepicker--produit-date .ui-datepicker-current-day .ui-state-default {
	/* jour sélectionné */
	color: #fff;
	/*border-radius: 100%;*/
	border: 1px solid white !important;
	background-color: transparent;
}

.datepicker--produit-date .ui-datepicker-current-day:not(.ui-datepicker-unselectable) .ui-state-default:after {
	content: "";
	position: absolute;
	top: -6px;
	right: -7px;
	width: 16px;
	height: 16px;
	background-color: var(--color-success);
	background-image: var(--svg-check);
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: 10px auto;
	border-radius: 50%;
	overflow: hidden;
	box-shadow: -3px 3px 6px rgba(0, 0, 0, 0.16);
}

@media (max-width: 767px) {
	.datepicker--produit-date .ui-datepicker-current-day .ui-state-default:after {
		/*top: -5px;*/
		/*right: -6px;*/
		/*width: 2em !important;*/
		/*height: 2em !important;*/
		width: 50% !important;
		height: 50% !important;
	}
}

.datepicker--produit-date .ui-datepicker-current-day:not(.ui-datepicker-unselectable) .ui-state-default:after {
	/*width: 16px;*/
	/*height: 16px;*/
}

.datepicker--produit-date thead tr {
	background-color: var(--datepicker-days-header);
}

/**
 * Datepicker fiche produit:
 * - corrections afin d'avoir des ronds bien formées
 * - passage en flex pour les lignes
 * - on cache le bouton "Aujourd'hui'
 */
.datepicker--produit-date thead tr,
.datepicker--produit-date tr {
	display: flex;
}

.datepicker--produit-date thead th,
.datepicker--produit-date td {
	display: inline-block;
	position: relative;
	/*width: 50%;*/
	width: 50%;
}

.datepicker--produit-date td:before {
	content: "";
	margin-top: 100%;
	display: block;
}

.datepicker--produit-date td .ui-state-default {
	position: absolute;
	top: 3px;
	bottom: 3px;
	left: 3px;
	right: 3px;
}

.datepicker--produit-date .ui-datepicker-buttonpane {
	display: none;
}

/*=====  FIN Filters  =====*/

/*==========================
=            Cards            =
==========================*/

/*----------  Général  ----------*/
.row--categorie {
}

.row--scategorie {
}

.row--produit {
}

/*----------  Liste  ----------*/

#liste_categorie,
#liste_scategorie,
#liste_produit,
#resultat_recherche {
	width: 100%;
	max-width: 1140px;
	margin-left: 0;
}

@media (max-width: 479px) {
	#liste_produit,
	#resultat_recherche {

		display: flex;
		flex-direction: column;
		align-items: center;
	}
}

@media (min-width: 480px) {
	#liste_produit,
	#resultat_recherche {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 30px;
		padding: 0;
	}

	#liste_produit::after, #liste_produit::before,
	#resultat_recherche::after, #resultat_recherche::before {
		display: none;
	}
}

@media (min-width: 768px) {
	#liste_categorie,
	#liste_scategorie,
	#liste_produit,
	#resultat_recherche {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 30px;
		padding: 0;
	}

	#liste_categorie::after, #liste_categorie::before,
	#liste_scategorie::after, #liste_scategorie::before {
		display: none;
	}
}

/*----------  product  ----------*/

.row--produit {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	overflow: hidden;
	border-radius: 16px;
	box-shadow: 0 0 6px rgba(0, 0, 0, 0.16);
	margin-bottom: 30px;
	background-color: #fff;
	width: 100%;
}

@media (min-width: 480px) {
	.row--produit {
		margin-left: auto;
		margin-right: auto;
		max-width: 360px;
	}
}

@media (min-width: 992px) {
	.row--produit {
		transition: all 0.2s linear;
	}

	.row--produit:hover, .row--produit:focus-within {
		transform: scale(1.03);
	}
}

.image {
	width: 100%;
	height: 200px;
	flex: 0 0 200px;
	padding: 0;
	position: static;
}

.image a {
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-radius: 10px 10px 0 0;
}

.image img {
	object-fit: cover;
	object-position: center;
	max-width: none;
	width: 100%;
	height: 100%;
}

.libelle {
	position: static;
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: 15px 5px 10px 5px;
	text-align: center;
}

.libelle a {
	font-size: 16px;
	font-weight: 700;
	color: var(--color-primary);
	line-height: 1.1;
	margin-bottom: 13px;
	text-transform: uppercase;
}


.libelle a:hover, .libelle a:focus {
	color: var(--color-primary);
	text-decoration: none;
}

.libelle a:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.libelle .description a::after {
	position: initial;
}

@media (min-width: 480px) {
	.libelle a {
		font-size: 18px;
	}
}

.prix {
	position: static;
	width: 100%;
	padding: 5px;
	border-top: 1px solid var(--color-gray-1);
	text-align: center;
	color: var(--color-secondary);
	font-size: 17px;
	font-weight: 700;
	margin-top: auto;
}

/*----------  Catégories  ----------*/

.row--categorie:not(.image),
.row--scategorie:not(.image) {
	position: relative;
	display: flex;
	align-items: stretch;
	overflow: hidden;
	border-radius: 8px;
	box-shadow: 0 0 6px rgba(0, 0, 0, 0.16);
	margin-bottom: 15px;
	background-color: #fff;
}

.row--categorie:not(.image):after,
.row--scategorie:not(.image):after {
	content: "";
	position: absolute;
	/*top: 21px;*/
	/*right: -21px;*/
	width: 50px;
	/*height: 8px;*/
	/*transition: all 0.2s linear;*/
	background-image: var(--svg-chevron-secondary);
	background-position: center;
	background-size: 6px;
	background-repeat: no-repeat;
	background-color: transparent;
	transform: rotate(-90deg);
	/*z-index: -1;*/
	pointer-events: none;
	right: -3px;
	/*width: 50px;*/
	height: 100%;
}

.row--categorie:focus:not(.image):after,
.row--scategorie:focus:not(.image):after,
.row--categorie:active:not(.image):after,
.row--scategorie:active:not(.image):after {
	background-image: var(--svg-chevron-white);
	background-color: var(--color-secondary);
}

@media (min-width: 480px) {
	.row--categorie:not(.image)
	.row--scategorie:not(.image) {
		margin-bottom: 30px;
	}

	.row--categorie:not(.image):after,
	.row--scategorie:not(.image):after {
		width: 100px;
		/*height: 16px;*/
		background-size: 10px;
		/*top: 42px;*/
		/*right: -42px;*/
		height: 90px;
		top: 5px;
		right: -5px;
	}
}

@media (min-width: 768px) {
	.row--categorie:not(.image),
	.row--scategorie:not(.image) {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		justify-content: flex-start;
		width: 100%;
		float: left;
		margin: 0;
		padding: 5px;
		border-radius: 16px;
		box-shadow: none;
		border: 1px solid var(--color-gray-1);
		transition: all 0.2s linear;
	}

	.row--categorie:not(.image):after,
	.row--scategorie:not(.image):after {
		display: none;
	}

	.row--categorie:not(.image):hover, .row--categorie:not(.image):focus-within,
	.row--scategorie:not(.image):hover, .row--scategorie:not(.image):focus-within {
		box-shadow: 0 0 6px rgba(0, 0, 0, 0.16);
		transform: scale(1.03);
	}
}

@media (min-width: 992px) {
	.row--categorie:not(.image),
	.row--scategorie:not(.image) {
		padding: 15px;
	}
}

.row--categorie .image,
.row--scategorie .image {
	width: 50px;
	height: 50px;
	flex: 0 0 50px;
}

@media (min-width: 480px) {
	.row--categorie .image,
	.row--scategorie .image {
		width: 100px;
		height: 100px;
		flex: 0 0 100px;
	}
}

.row--categorie .image a,
.row--scategorie .image a {
	border-radius: 8px 0 0 8px;
}

@media (min-width: 768px) {
	.row--categorie .image a,
	.row--scategorie .image a {
		border-radius: 10px;
	}
}

.row--categorie .libelle,
.row--scategorie .libelle {
	align-items: flex-start;
	justify-content: center;
	flex: 1;
	padding: 5px 25px 5px 15px;
}

.row--categorie .libelle a,
.row--scategorie .libelle a {
	margin-bottom: 0;
}

.row--categorie .description,
.row--scategorie .description {
	display: none;
}

.row--produit .description {
	max-height: 83px;
	overflow: hidden;
}

@media (min-width: 768px) {
	.row--categorie .libelle,
	.row--scategorie .libelle {
		align-items: center;
		justify-content: flex-start;
	}

	.row--produit .description,
	.row--categorie .description,
	.row--scategorie .description {
		display: block;
		font-size: 16px;
		max-height: 92px;
		overflow: hidden;
	}
}

@media (min-width: 768px) {
	.image,
	.row--categorie .image,
	.row--scategorie .image {
		width: 100%;
		height: 180px;
		flex: 0 0 150px;
	}
}

@media (min-width: 1170px) {
	.image,
	.row--categorie .image,
	.row--scategorie .image {
		height: 180px;
		flex: 0 0 180px;
	}
}


@media (min-width: 768px) {
	.libelle,
	.row--categorie .libelle,
	.row--scategorie .libelle {
		flex-direction: column;
		width: 100%;
		padding: 15px 5px 10px 5px;
		text-align: center;
	}

	.libelle a,
	.row--categorie .libelle a,
	.row--scategorie .libelle a {
		font-size: 16px;
		margin-bottom: 12px;
	}

	.row--produit .description {
		margin-bottom: 15px;
	}
}

@media (min-width: 1170px) {
	.libelle {
		padding: 15px 15px 10px 15px;
	}

	.row--categorie .libelle,
	.row--scategorie .libelle {
		padding: 15px 0 0 0;
	}

	.libelle a,
	.row--categorie .libelle a,
	.row--scategorie .libelle a {
		font-size: 18px;
	}
}

/*=====  FIN Cards  =====*/


/*==========================
=            Fiche produit            =
==========================*/

.col-md-6 #description_longue, .col-md-6 #produits_lies, .col-md-6 .bouton_reseaux_sociaux, .col-md-6 .lien_retour_boutique_fiche_produit {
	display: none !important;
}

#image_produit {
	padding-left: 0;
	padding-right: 0;
	margin-bottom: 30px;
}

#image_produit + .col-md-6 {
	margin-bottom: 60px;
	padding: 0;
}

.product-content {
	/* clear: both;  */
}

@media (min-width: 768px) {
	#image_produit {
		width: 50%;
		float: left;
	}

	#image_produit + .col-md-6 {
		width: 50%;
		float: left;
		padding-left: 15px;
	}
}

@media (min-width: 1200px) {
	#image_produit {
		width: 60%;
	}

	#image_produit + .col-md-6 {
		width: 40%;
		float: right;
		padding-left: 30px;
	}

	.product-content {
		width: 60%;
		float: left;
	}
}

@media (min-width: 1540px) {
	#image_produit {
		width: 64.912%;
	}

	#image_produit + .col-md-6 {
		width: 35.088%;
	}

	.product-content {
		width: 64.912%;
	}
}

#titre_description_courte_produit {
	text-align: right;
}

#titre_produit {
	text-align: left;
	display: block;
	font-size: 30px;
	font-weight: bold;
	margin-bottom: 10px;
}

@media (min-width: 768px) {
	#titre_produit {
		font-size: 22px;
	}
}

#description_courte {
	text-align: left;
}

#description_courte *:last-child {
	margin-bottom: 0;
}

@media (min-width: 1200px) {
	#description_courte, #bouton_voir_description {
		font-size: 16px;
	}
}


#description_longue {
	margin-bottom: 60px;
}

@media (min-width: 768px) {
	#description_longue {
		font-size: 16px;
	}
}

/*----------  Produits associés  ----------*/
.section-associate {
	background-color: var(--color-gray-1);
	padding-top: 30px;
	padding-bottom: 30px;
	margin-left: -15px;
	margin-right: -15px;
	clear: both;
}

@media (min-width: 768px) {
	.section-associate {
		margin-left: calc(-100vw / 2 + 720px / 2);
		margin-right: calc(-100vw / 2 + 720px / 2);
	}
}

@media (min-width: 992px) {
	.section-associate {
		margin-left: -15px;
		margin-right: -15px;
	}
}

@media (min-width: 1200px) {
	.section-associate {
		margin-left: -30px;
		margin-right: -30px;
	}
}

@media (min-width: 1530px) {
	.section-associate {
		margin-left: calc(-100vw / 2 + 1471px / 2);
		margin-right: calc(-100vw / 2 + 1471px / 2);
	}
}

#produits_lies {
	margin-left: auto;
	margin-right: auto;
	width: 100% !important;
	max-width: 1200px;
}

#produits_lies:before, #produits_lies:after {
	display: none;
}

@media (min-width: 768px) {
	#produits_lies {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 30px;
	}
}

@media (min-width: 992px) {
	#produits_lies {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 30px;
	}
}

.phrase_produits_lies {
	display: block;
	text-align: center;
	font-size: 26px;
	font-weight: bold;
	margin-bottom: 30px;
	grid-column-start: 1;
	grid-column-end: -1;
}

@media (min-width: 480px) {
	.phrase_produits_lies {
		font-size: 34px;
	}
}

@media (min-width: 768px) {
	.phrase_produits_lies {
		font-size: 42px;
	}
}

.produit_lie {
	float: none;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	overflow: hidden;
	border-radius: 16px;
	box-shadow: 0 0 6px rgba(0, 0, 0, 0.16);
	margin-bottom: 30px;
	background-color: #fff;
	padding: 0;
	width: 100%;
}

@media (min-width: 480px) {
	.produit_lie {
		margin-left: auto;
		margin-right: auto;
		max-width: 360px;
	}
}

@media (min-width: 992px) {
	.produit_lie {
		transition: all 0.2s linear;
	}

	.produit_lie:hover, .produit_lie:focus-within {
		transform: scale(1.03);
	}
}

.image_produit_lie {
	width: 100%;
	height: 200px;
	flex: 0 0 200px;
	padding: 0;
	position: static;
}

.image_produit_lie a {
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-radius: 10px;
}

.image_produit_lie img {
	object-fit: cover;
	object-position: center;
	max-width: none;
	width: 100%;
	height: 100%;
}

.designation_produit_lie {
	position: static;
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: 20px 5px;
	text-align: center;
}

@media (min-width: 768px) {
	.designation_produit_lie {
		padding: 20px 15px;
	}
}

.designation_produit_lie a {
	font-size: 16px;
	font-weight: 700;
	color: var(--color-primary);
	line-height: 1.1;
	margin-bottom: 0;
	text-transform: uppercase;
}


.designation_produit_lie a:hover, .designation_produit_lie a:focus {
	color: var(--color-primary);
	text-decoration: none;
}

.designation_produit_lie a:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

@media (min-width: 480px) {
	.designation_produit_lie a {
		font-size: 18px;
	}
}

.bouton_reseaux_sociaux {
	display: block;
	clear: both;
	float: none;
	margin: 0;
	padding-top: 30px;
	padding-bottom: 30px;
	overflow: hidden;
}

.lien_retour_boutique_fiche_produit {
	margin: 10px 0 0 0;
}

.lien_retour_boutique_fiche_produit a {
	float: none;
}

@media (min-width: 480px) {
	.lien_retour_boutique_fiche_produit {
		float: right;
		margin: -5px 0 0 0;
	}

	.bouton_reseaux_sociaux > div {
		display: none;
	}
}

@media (min-width: 768px) {
	.bouton_reseaux_sociaux {
		padding-top: 60px;
		padding-bottom: 60px;
	}
}

@media (max-width: 479px) {
	.lien_retour_boutique_fiche_produit {
		float: left;
	}
}

/*----------  Slider  ----------*/

.owl-nav {
	display: none;
}

.owl-stage-outer {
	border-radius: 15px;
}


/*=====  FIN Fiche produit  =====*/


/*==========================
=            Panier Prod            =
==========================*/

/*----------  Prix  ----------*/

.product-price {
	margin-bottom: 10px;
}

.prix_produit {
	font-weight: 700;
	font-size: 32px;
	color: var(--color-secondary);
	display: block;
	line-height: 1;
}

.rupture_stock {
	color: var(--color-alert);
	display: block;
	text-transform: uppercase;
}

.reapprovisionnement, .en_stock {
	color: var(--color-gray-3);
	display: block;
}

/*----------  Panier form  ----------*/

#titre_description_courte_produit #choix_date,
#titre_description_courte_produit #choix_plage,
#titre_description_courte_produit #tableau_gamme,
#conteneur_calendrier_produit { /* WTF */
	display: none !important;
}


/* liste billet kit */

.liste_billet_kit {
	margin-bottom: 15px;
}

.liste_billet_kit:last-child {
	margin-bottom: 0;
}

.entete_tableau {
	display: none;
}

.ligne_billet_kit {
	display: flex;
	flex-wrap: wrap;
	border: 1px solid var(--color-secondary);
	border-radius: 6px;
	padding: 10px;
	flex-direction: column;
	font-size: 14px;
	margin-bottom: 10px;
}

.ligne_billet_kit td {
	display: block !important;
}

.ligne_billet_kit:last-child {
	margin-bottom: 10px;
}

.ligne_billet_kit td:first-child {
	font-weight: 700;
	font-size: 16px;
}

#billet_kit_date {
	padding-top: 10px;
}

/* END : Liste billet kit */

/* Plan de salle */
.conteneur_lien_plan_salle {
	display: none;
}

/* END : Plan de salle */

#tableau_gamme {
	width: 100%;
}

.entete_tableau_gamme {
	display: none;
}

.prix_apres_remise {
	font-weight: 700;
	font-size: 14px;
	color: var(--color-secondary);
}

.ligne_tableau_gamme td {
	padding-bottom: 10px;
}

.quantite_gamme {
	width: 63px;
}

.product-addtocart-submit {
	position: relative;
	padding-left: 50px;
}

.product-addtocart-submit:before {
	content: "";
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 0;
	left: 0;
	width: 30px;
	height: 30px;
	background-color: var(--color-secondary);
	color: #fff;
	background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNSIgaGVpZ2h0PSIxMi40MiIgdmlld0JveD0iMCAwIDE1IDEyLjQyIj4KICA8cGF0aCBkPSJNMTMuOCwzLjIzSDExLjY4YS4zOS4zOSwwLDAsMC0uMzguMzkuMzguMzgsMCwwLDAsLjM4LjM5SDEzLjhhLjQ3LjQ3LDAsMCwxLC40My4ybC0xLjMsNy4xNmMwLC4xMy0uMTguMjctLjQzLjI3aC0xMGEuMzkuMzksMCwwLDEtLjQzLS4zNGwtMS4yOS03Qy43Nyw0LjE1LDEsNCwxLjIsNEg0LjI1TDMuODksNS40N2EuMzguMzgsMCwwLDAsLjI4LjQ3aC4wOWEuMzkuMzksMCwwLDAsLjM4LS4yOUw1LjkzLjQ4QS4zOC4zOCwwLDAsMCw1LjY1LDBhLjM5LjM5LDAsMCwwLS40Ny4yOEw0LjQ0LDMuMjNIMS4yQTEuMTMsMS4xMywwLDAsMCwwLDQuMzVsMS4yOSw3YTEuMTMsMS4xMywwLDAsMCwxLjIsMS4wNWgxMGExLjEyLDEuMTIsMCwwLDAsMS4yLTFMMTUsNC4yOEExLjEzLDEuMTMsMCwwLDAsMTMuOCwzLjIzWiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCAwKSIgZmlsbD0iI2ZmZiIvPgogIDxwYXRoIGQ9Ik01LjgxLDMuNjJBLjM4LjM4LDAsMCwwLDYuMTksNEg5Ljk0bC40MSwxLjY1YS40MS40MSwwLDAsMCwuMzguMjloLjFhLjM5LjM5LDAsMCwwLC4yOC0uNDdMOS44MS4yOUEuMzkuMzksMCwwLDAsOS4zNCwwYS4zOC4zOCwwLDAsMC0uMjguNDdsLjY5LDIuNzVINi4xOUEuMzkuMzksMCwwLDAsNS44MSwzLjYyWiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCAwKSIgZmlsbD0iI2ZmZiIvPgo8L3N2Zz4K');
	background-position: 50%;
	background-size: 18px auto;
	background-repeat: no-repeat;
	border-radius: 50%;
}

.product-addtocart-submit.disabled:before {
	background-color: var(--color-gray-2);
}

.ajout_panier {
	height: 40px;
	position: relative;
	top: -5px;
}

.product-addtocart-submit.disabled .ajout_panier {
	background-color: var(--color-gray-2);
	border: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: no-drop;
}


/*=====  FIN Panier Prod  =====*/

/*==========================
=            Panier            =
==========================*/

/*----------  Intro  ----------*/
#panier_complet {
	min-height: 65vh;
}

#panier_complet .phrase_produit_panier {
	font-size: 18px;
}

#vider_panier {
	display: block;
	margin-left: auto;
	margin-bottom: 10px;
}

#erreur_panier {
	/* border-radius: 6px; */
	/* padding: 15px; */
	/* background: var(--color-alert); */
	/* color: #fff; */
	color: var(--color-alert);
	font-size: 16px;
	font-weight: bold;
	display: block;
	margin: 15px 0;
}

/*----------  Tableau panier  ----------*/

#liste_produit_panier {
	width: 100%;
	margin-bottom: 30px;
	border-radius: 10px;
	overflow: hidden;
}

#liste_produit_panier tr:not(:last-of-type) {
}

/*----------  Généralité Tableau  ----------*/

#liste_produit_panier td {
	padding: 30px 15px;
}

#liste_produit_panier .normal {
	border-bottom: 1px solid var(--color-gray-1);
}

/*----------  Header tableau  ----------*/

#liste_produit_panier th {
	padding: 30px 15px;
	background-color: var(--color-gray-1);
	text-align: center;
}

/*----------  Images  ----------*/

#liste_produit_panier td:first-child {
	width: 135px;
}

#liste_produit_panier .image_produit {
	padding-left: 0;
	width: 135px;
}

#liste_produit_panier .image_produit a {
	width: 120px;
	height: 120px;
	overflow: hidden;
	border-radius: 6px;
	display: block;
}

#liste_produit_panier .image_produit img {
	object-fit: cover;
	object-position: center;
	width: 100%;
	height: 100%;
}

/*----------  Designation  ----------*/

#liste_produit_panier th.designation_produit {
	text-align: left;
}

.designation_produit a {
	display: block;
	font-size: 18px;
	font-weight: 700;
	color: var(--color-primary);
	overflow-wrap: break-word;
	word-wrap: break-word;
	word-break: break-all;
	word-break: break-word;
	hyphens: auto;
}

#paniercomplet_infos_gamme {
	margin-right: 5px;
}

/*----------  Infos complémentaires  ----------*/

.ligne_informations_complementaires {
	border-bottom: 1px solid var(--color-gray-1);
	position: relative;
	top: -20px;
}

#liste_produit_panier .ligne_informations_complementaires td {
	padding: 0 15px;
}

.valeur_info_complementaire .probleme {
	border-color: var(--color-alert);
	box-shadow: inset 0px 1px 1px var(--color-alert);
}

/*----------  PU  ----------*/

td.pu_ttc_produit {
	text-align: center;
	font-size: 18px;
}


/*----------  Quantité  ----------*/
td.qte_produit {
	text-align: center;
	font-size: 18px;
}

.qte_produit a {
	font-size: 18px;
	font-weight: normal;
	margin: 0 2px;
}

.qte_produit a svg {
	display: block;
	font-size: 18px;
	margin: 0 auto;
}

/*----------  Total TTC  ----------*/

td.mnt_ttc_produit {
	text-align: center;
	font-size: 18px;
	font-weight: 700;
}


/*----------  Suppression ligne  ----------*/

.suppression_ligne {
	width: 70px;
	text-align: center;
}

.suppression_ligne .btn {
	padding: 0 !important;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--color-alert);
	border-color: var(--color-alert);
	opacity: 0.15;
}

.suppression_ligne .btn:hover, .suppression_ligne .btn:focus {
	opacity: 1;
	background-color: var(--color-alert);
	border-color: var(--color-alert);
}

/*----------  Total panier  ----------*/

.ligne_total_panier td {
	background-color: var(--color-gray-1);
	padding: 30px 15px;
	font-weight: 400;
	font-size: 28px;
}

.ligne_total_panier td:last-child {
	text-align: center;
	padding-right: 85px;
	font-size: 28px;
	border-radius: 0 0 10px 0;
	overflow: hidden;
}

.ligne_total_panier td:first-child {
	border-radius: 0 0 0 10px;
	overflow: hidden;
}

/*----------  Bloc promo  ----------*/

.code_promotion {
	padding-top: 30px;
	font-weight: bold;
	text-align: center;
}

.code_promotion input {
	display: inline-block;
	width: auto;
}

.code_promotion a {
	vertical-align: top;
	background-color: var(--color-primary);
}

.code_promotion a:hover, .code_promotion a:focus {
	background-color: var(--color-primary);
}

/*----------  Retour boutique  ----------*/

.bouton_fin_commande {
	margin-top: 30px;
}

#lien_navigation_panier, .bouton_fin_commande {
	display: flex;
	width: 100%;
	align-items: center;
	justify-content: space-between;
}

.poursuivre_vente {
	order: 1;
}

#choix_livraison .btn {
	margin-top: 0 !important;
}

.poursuivre_vente a {
	margin-bottom: 15px;
}

.is-cart .retour_boutique a,
.retour_panier .btn {
	background-color: var(--color-secondary);
	/*background-color: transparent;*/
	/*color: var(--color-primary);*/
	/*color: var(--color-secondary);*/
	color: #fff;
	/*border-color: var(--color-gray-1);*/
	border-color: var(--color-secondary);
	margin-bottom: 15px;
}

.is-cart .retour_boutique a:hover, .is-cart .retour_boutique a:focus,
.retour_panier .btn:hover, .retour_panier .btn:focus {
	background-color: var(--color-primary);
	color: #fff;
	border-color: var(--color-primary);
}

/*----------  Mobile  ----------*/

@media (max-width: 768px) {
	#liste_produit_panier tr:first-child {
		display: none;
	}

	#liste_produit_panier tr {
		display: flex;
		flex-direction: column;
		width: 100%;
	}

	#liste_produit_panier td {
		padding: 10px;
	}

	.designation_produit {
		background-color: var(--color-gray-1);
		border-radius: 10px 10px 0 0;
	}

	.pu_ttc_produit, .qte_produit, .mnt_ttc_produit {
		position: relative;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
		border-bottom: 1px solid var(--color-gray-1);
	}

	.pu_ttc_produit:before, .qte_produit:before, .mnt_ttc_produit:before {
		color: var(--color-gray-3);
	}

	.pu_ttc_produit:before {
		content: "P.U. TTC";
	}

	.qte_produit:before {
		content: "Quantité";
	}

	.mnt_ttc_produit:before {
		content: "Montant Total";
	}

	#liste_produit_panier td.suppression_ligne {
		width: 100%;
		display: flex;
		justify-content: center;
		padding-bottom: 30px;
	}

	#liste_produit_panier .ligne_informations_complementaires td {
		width: 100%;
	}

	.ligne_informations_complementaires {
		top: -20px;
		border-radius: 10px;
		background-color: var(--color-gray-1);
		margin-bottom: 30px;
	}

	#liste_produit_panier .ligne_informations_complementaires td:first-child {
		font-weight: 700;
		padding: 10px;
	}

	#liste_produit_panier tr.ligne_total_panier {
		flex-direction: row;
		width: 100%;
		align-items: center;
		justify-content: space-between;
		background-color: var(--color-gray-1);
	}

	#liste_produit_panier td.code_promotion {
		width: 100%;
	}

	#lien_navigation_panier, .bouton_fin_commande {
		flex-direction: column;
	}

	.poursuivre_vente {
		order: -1;
	}

	#lien_navigation_panier .poursuivre_vente + .retour_boutique {
		margin-top: 10px;
	}

}

/*=====  FIN Panier  =====*/

/*==========================
=            Mon compte            =
==========================*/

/*----------  Login page  ----------*/

.is-account h1 {
	margin-bottom: 50px;
}

@media (min-width: 768px) {
	.is-account main .container {
		width: 100%;
		max-width: 1170px;
	}

	#conteneur_connexion {
		display: flex;
		align-items: stretch;
		justify-content: center;
	}
}

@media (min-width: 992px) {
	.is-account main .container {
		width: 100%;
		max-width: 1170px;
	}
}

#bloc_connexion,
#bloc_inscription {
	padding: 15px 15px 25px 15px;
	border-radius: 10px;
	margin-bottom: 30px;
	max-width: 360px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	height: auto !important;
}

#bloc_inscription {
	background-color: var(--color-secondary);
	color: #fff;
}

#bloc_inscription .btn {
	background-color: #fff;
	border: 0;
	color: var(--color-secondary);
	margin-top: 35px;
}

#bloc_inscription .btn:hover, #bloc_inscription .btn:focus {
	background-color: #fff;
	border: 0;
	color: var(--color-bg);
}

#bloc_connexion {
	border: 1px solid var(--color-secondary);
}

.is-account .retour_boutique {
	text-align: right;
	margin-top: 60px;
}

@media (max-width: 768px) {
	#gestion_cookies_details .bouton_cookies {
		font-size: 11px;
		padding: 4px !important;
	}
}

@media (min-width: 768px) {
	#bloc_connexion,
	#bloc_inscription {
		display: flex;
		flex-direction: column;
	}

	.contenu_bloc_connexion {
		margin-top: auto;
	}

	#bloc_inscription {
		margin-right: 15px;
	}

	#bloc_connexion {
		margin-left: 15px;
	}
}

@media (min-width: 992px) {
	#bloc_inscription {
		margin-right: 30px;
	}

	#bloc_connexion {
		margin-left: 30px;
	}
}

.entete_bloc_connexion {
	font-weight: 400;
	font-size: 26px;
	text-align: center;
	margin-bottom: 20px;
}

.contenu_bloc_connexion {
	text-align: center;
}

.informations_contenu_bloc_connexion {
	margin-bottom: 15px;
}

#formulaire_inscription, #formulaire_connexion {
	text-align: left;
}

.contenu_bloc_connexion input[type=button].btn {
	width: auto;
	margin-left: auto;
}

#mdp_oublie {
	color: var(--color-secondary);
}

#mdp_oublie:hover {
	color: var(--color-secondary);
}

#motdepasse_formulaire {
	border: 1px solid var(--color-gray-2);
	border-radius: 4px;
	overflow: hidden;
	display: flex;
	align-items: center;
}

#motdepasse_formulaire input {
	border: 0;
	flex: 1;
}

#motdepasse_formulaire input:focus {
	border: 0;
	outline: 0;
	box-shadow: none;
}

#motdepasse_formulaire .input-group-addon:not(:first-child):not(:last-child),
#motdepasse_formulaire .input-group-addon {
	border-radius: 0 4px 4px 0;
	padding: 0;
	width: 40px;
	border: 0;
	background: transparent;
	color: var(--color-gray-2);
	border-left: 1px solid var(--color-gray-2);
}

#motdepasse_formulaire input[type="text"] + .input-group-addon .fa-eye-slash {
	display: none;
}

#motdepasse_formulaire input[type="text"] + .input-group-addon .fa-eye {
	display: inline-block;
	color: var(--color-secondary);
}

/*----------  Mon compte : Accueil  ----------*/

.message_accueil {
	font-size: 36px;
	margin-bottom: 50px;
}

.message_accueil + p {

}

#boutons_mon_compte {
	margin-top: 20px;
	margin-left: -15px;
	margin-right: -15px;
	overflow: hidden;
}

.bouton_mon_compte {
	color: #fff;
	background-color: var(--color-secondary);
	padding: 10px;
	border-radius: 10px;
	font-size: 18px;
	display: flex;
	align-items: center;
	margin-bottom: 30px;
	min-height: 75px;
}

.bouton_mon_compte:hover, .bouton_mon_compte:focus {
	color: #fff;
	background-color: var(--color-secondary);
	text-decoration: none;
}

.bouton_mon_compte svg.icone_bouton_mon_compte {
	margin-right: 15px;
	width: 25px;
	height: auto;
}

@media (min-width: 480px) {
	.bouton_mon_compte {
		padding: 20px;
	}
}

@media (min-width: 768px) {
	#boutons_mon_compte {
		margin-top: 50px;
	}

	#boutons_mon_compte .col-md-4 {
		width: 33.33333333%;
		float: left;
	}

	.bouton_mon_compte {
		flex-direction: column;
		padding: 20px 10px;
		min-height: 220px;
		justify-content: center;
		text-align: center;
	}

	.bouton_mon_compte svg.icone_bouton_mon_compte {
		margin-right: 0;
		margin-bottom: 30px;
		width: 75px;
		opacity: 0.3;
	}

	.bouton_mon_compte:hover svg.icone_bouton_mon_compte {
		opacity: 1;
	}
}

/*----------  Récap commande  ----------*/

#historique_commande {
	padding: 0 15px;
}

#historique_commande > p, .message_enregistrement {
	font-size: 18px;
	text-align: center;
	display: block;
}

#historique_commande table {
	width: 100%;
	margin-bottom: 30px;
	table-layout: fixed;
}

#historique_commande table tr {
	border: 1px solid var(--color-gray-1);
}

#historique_commande table tr th {
	background-color: var(--color-gray-1);
	padding: 15px;
}

#historique_commande table tr td {
	padding: 15px;
}

#historique_commande table tr td:last-of-type {
	text-align: center;
}

span.renvoi_mail a svg {
	min-height: 10px;
	min-width: 10px !important;
}

@media (max-width: 768px) {
	#historique_commande table tr td {
		padding: 5px;
	}

	#historique_commande table tr td.date_commande {
		font-size: 10px;
		text-align: center;
	}
}

/* .renvoi_mail {
  background-color: var(--color-success);
  color: #fff;
  padding: 3px 10px;
  border-radius: 20px;
} */

/*----------  Modif infos compte  ----------*/

#formulaire_enregistrement table,
#page_formulaire_enregistrement table,
#choix_livraison table {
	margin: 0 auto;
	width: 100%;
	max-width: 600px;
}

#formulaire_enregistrement td,
#page_formulaire_enregistrement td,
#choix_livraison td {
	padding-top: 5px;
	padding-bottom: 5px;
}

#formulaire_enregistrement tr:last-child td,
#page_formulaire_enregistrement tr:last-child td,
#choix_livraison tr:last-child td {
	text-align: right;
}

#formulaire_enregistrement .btn,
#page_formulaire_enregistrement .btn,
#choix_livraison .btn {
	margin-top: 15px;
}

.informations_legales {
	display: block;
	margin-top: 30px;
	text-align: center;
}

.entete_bloc_inscription {
	padding: 30px 0;
	font-size: 26px;
	font-weight: 400;
	color: var(--color-secondary);
}

#pays_client,
#pays_livraison {
	display: block;
	width: 100%;
	height: 34px;
	padding: 6px 12px;
	font-size: 14px;
	line-height: 1.42857143;
	color: #555;
	background-color: #fff;
	background-image: none;
	border: 1px solid #ccc;
	border-radius: 4px;
	-webkit-box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%);
	box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%);
	-webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
	-o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
	transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}

#motdepasse_client {
	margin-bottom: 10px;
}

#jauge_mot_de_passe {
	height: 15px;
	width: 90%;
	border-radius: 4px;
	overflow: hidden;
}

#jauge_mot_de_passe + svg {
	margin-left: 2%;
	width: 5%;
	cursor: pointer;
}

#frais_port_commande {
	margin-top: 30px;
	max-width: 600px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	background-color: var(--color-gray-1);
	border-radius: 10px;
	border: 2px solid var(--color-gray-2);
	padding: 15px 10px 0 10px;
}

@media (min-width: 768px) {
	#frais_port_commande {
		padding: 20px 20px 5px 20px;
	}
}

.bfp {
	display: flex;
}

.bfp > .bfp-infos {
	width: 70%;
}

.bfp:not(.selected) .bfp-retrait {
	/*flex-grow: 1;*/
	display: none;
}

.bfp .bfp-retrait label {
	font-weight: normal;
	font-size: 90%;
}

.bfp .details_frais_port {
	display: block;
	margin-bottom: 5px;
	margin-top: -5px;
	font-size: 90%;
	font-style: italic;
}

.swal-button--confirm {
	background-color: var(--color-secondary) !important;
}

/*=====  FIN Mon compte  =====*/

/*==========================
=            Modal Plan salle            =
==========================*/

#information_produit_plan_salle {
	font-size: 20px;
	margin-bottom: 10px;
}

#conteneur_boutons_choix_tribune {
	display: flex;
	overflow-x: hidden;
	padding-bottom: 5px;
	position: relative;
	z-index: 1;
	border-radius: 4px;
}

#boutons_choix_tribune_salle {
	position: relative;
}

#boutons_choix_tribune_salle .tribune-controls {
	background-color: var(--color-secondary);
	border-radius: 4px;
	color: white;
	padding: 0 3px;
	position: absolute;
	font-size: 32px;
	display: none;
	cursor: pointer;
	z-index: 2;
	top: 0;
	width: 35px;
}

#boutons_choix_tribune_salle .tribune-controls#tc-left {
	left: 0;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}

#boutons_choix_tribune_salle .tribune-controls#tc-right {
	right: 0;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}

#cboxMiddleLeft,
#cboxMiddleRight,
#cboxTopLeft,
#cboxTopCenter,
#cboxTopRight,
#cboxBottomLeft,
#cboxBottomCenter,
#cboxBottomRight {
	background: white;
}

#colorbox {
	position: fixed !important;
	top: 0 !important;
}

#colorbox #conteneur_plan_et_places {
	position: relative;
	border-bottom: 1px var(--color-secondary) solid;
	overflow: hidden;
}

#colorbox #conteneur_plan_salle {
	max-width: inherit !important;
	min-width: inherit !important;
}

#colorbox #conteneur_navigation {
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	position: absolute;
}

#conteneur_navigation .plan-controls {
	display: none;
	color: rgba(51, 51, 51, 0.5);
	position: absolute;
	font-size: 20px;
	z-index: 10;
}

#conteneur_navigation .plan-controls#pc-haut,
#conteneur_navigation .plan-controls#pc-bas {
	margin: auto;
	left: 0;
	right: 0;
}

#conteneur_navigation .plan-controls#pc-droite,
#conteneur_navigation .plan-controls#pc-gauche {
	margin: auto;
	top: 0;
	bottom: 0;
}

#conteneur_navigation .plan-controls.disabled {
	cursor: grabbing;
}

#conteneur_navigation .plan-controls .pc-hover {
	display: none;
}

#conteneur_navigation .plan-controls:not(.disabled):hover .pc-normal {
	color: rgba(255, 255, 255, 0.5);
}

#conteneur_navigation .plan-controls .pc-normal,
#conteneur_navigation .plan-controls:not(.disabled):hover .pc-hover {
	display: block;
}

#conteneur_navigation .plan-controls#pc-haut {
	top: 0;
}

#conteneur_navigation .plan-controls#pc-haut #pc-normal-haut {
	top: -5px;
}

#conteneur_navigation .plan-controls#pc-droite {
	right: 0;
}

#conteneur_navigation .plan-controls#pc-droite #pc-normal-droite {
	right: -5px;
}

#conteneur_navigation .plan-controls#pc-bas {
	bottom: 0;
}

#conteneur_navigation .plan-controls#pc-gauche {
	left: 0;
}

#conteneur_navigation .plan-controls#pc-gauche #pc-normal-gauche {
	left: -5px;
}

#colorbox #plan_salle_billet {
	cursor: grab;
}

#cboxClose {
	display: none !important;
}

#information_gamme_salle_2d .libelle_gamme {
	display: none;
}

#places_reservees {
	position: absolute;
	top: calc(100% - 38px);
	bottom: 0;
	left: 0;
	height: 38px;
	width: auto !important;
	max-width: 100% !important;
	min-width: 20% !important;
	background: #fff;
	z-index: 2;
	border: 1px solid var(--color-secondary);
	border-radius: 4px;
	border-bottom-left-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
	border-bottom: none;
}

#places_reservees #entete_places_reservees_top {
	height: 38px;
	position: relative;
}

#places_reservees .ligne_place_reservee {
	overflow: hidden;
}

#places_reservees .places_reservees_regroupement_par_tribune,
#places_reservees .ligne_place_reservee {
	padding: 0 5px;
}

#places_reservees .ligne_place_reservee {
	padding-left: 10px;
}

#places_reservees .places_reservees_regroupement_par_tribune {
	background: none;
	padding: 3px 5px;
	font-weight: bold;
}

#places_reservees .ligne_place_reservee {
	text-overflow: ellipsis;
	white-space: nowrap;
	word-wrap: break-word;
	/*display: inline-block;*/
	display: block;
	overflow: hidden;
	max-width: 100%;
	vertical-align: bottom;
}

#places_reservees .entete_places_reservees {
	background-color: var(--color-secondary);
	color: #fff;
	padding: 6px 12px;
	font-size: 18px;
	cursor: pointer;
	text-align: center;
}

#places_reservees .titre_place_reservees {
	padding: 0 5px;
}

#places_reservees .titre_place_reservees,
#liste_places_reservees {
	overflow-y: auto;
	position: relative;
}

#liste_places_reservees .libelle_place {
	width: 35px;
	display: inline-block;
	position: relative;
	text-align: right;
	font-weight: 600;
}

#liste_places_reservees .libelle_place:after {
	content: " : ";
}

#bouton_validation_fermeture_plan_salle {
	width: 100%;
	text-align: right;
}

#bouton_validation_fermeture_plan_salle #bouton_annuler_places {
	background-color: var(--color-primary);
	color: #fff;
	border: 0;
}

#bouton_validation_fermeture_plan_salle #bouton_annuler_places:hover,
#bouton_validation_fermeture_plan_salle #bouton_annuler_places:focus {
	background-color: var(--color-primary);
	color: #fff;
	border: 0;
}

#colorbox #conteneur_plan_salle div#plan_salle_billet div.place_choisie_salle {
	background: transparent !important;
}

#colorbox #conteneur_plan_salle div#plan_salle_billet div.place_choisie_salle svg {
	color: lime;
	position: absolute;
	top: -25%;
	left: -25%;
	width: 150%;
	height: 150%;
}

div.bouton_tribune {
	display: inline-block;
	padding: 6px 12px;
	margin-right: 5px;
	margin-bottom: 5px;
	border-radius: 4px;
	cursor: pointer;
	flex-shrink: 0;
}

div.place_disponible_salle {
	position: absolute;
}

#plan_salle_billet:not(.ui-draggable-dragging) div.place_disponible_salle,
#plan_salle_billet:not(.ui-draggable-dragging) div.place_choisie_salle {
	cursor: pointer;
}

#colorbox #conteneur_plan_salle div#plan_salle_billet div.place_achetee_salle {
	background: transparent;
}

#colorbox #conteneur_plan_salle div#plan_salle_billet img.image_fond_plan_salle {
	max-width: inherit;
}

#colorbox #bouton_valider_places.disabled:hover {
	cursor: not-allowed;
}


/*=====  FIN Modal Plan salle  =====*/


/*==========================
=            Modal diverses            =
==========================*/

#dialog_continuer_vente_ou_voir_panier {
	position: fixed;
	top: 50% !important;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 999;
	opacity: 1;
	width: 100% !important;
}

#dialog_continuer_vente_ou_voir_panier .modal-dialog {
	transform: translate(0, 0);
}

.modal-footer {
	margin-bottom: -5px;
}

.modal-footer > .btn {
	margin-bottom: 5px !important;
}

.modal-cgv {
	width: 80% !important;
	height: 80% !important;
	overflow-y: auto;
}

/*=====  FIN Modal diverses  =====*/

/* Fil d'ariane */
.breadcrumb > li + li::before,
.fil_ariane > span + span::before {
	padding: 0 5px;
	color: #ccc;
	content: "/\00a0";
}

#panneau_central_boutique_web_incafu .fil_ariane > .panier_complet_boutique_ariane:last-child {
	display: none
}

#panneau_central_boutique_web_incafu .fil_ariane > .panier_complet_boutique_ariane + .panier_complet_boutique_ariane {
	display: initial;
}

div#panneau_central_boutique_web_incafu > .fil_ariane {
	margin-top: 10px;
}

div#panneau_central_boutique_web_incafu > div#recherche_boutique + .fil_ariane {
	margin-top: 0;
}

/** GESTION DU FOOTER TOUJOURS EN BAS DU PAGE **/

#footer-body {
	color: #fff;
	background-color: var(--color-primary);
	margin-left: -15px;
	margin-right: -15px;
	padding-top: 5px;
	padding-bottom: 5px;

	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}

#footer-body .container {
	display: flex;
	align-items: center;
	justify-content: space-between;

	padding-left: 15px;
	padding-right: 15px;

	width: 100% !important;
}

#footer-body a, #footer-body a:hover, #footer-body a:focus {
	color: #fff;
}

#footer-body a + a {
	margin-left: 20px;
}

#footer-body .container {
	max-width: 100%;
}

body {
	position: relative;
	min-height: calc(100vh - var(--menu-height) - 1px);
	padding-bottom: 60px;
	max-width: 100%;
}

/* PAGE DE MDP PERDU */
#email_regeneration {
	display: inline-block !important;
	width: auto !important;
	margin: 20px 10px !important;
}

#bouton_regeneration {
	vertical-align: baseline;
}

@media screen and (max-width: 480px) {
	#formulaire_regeneration_mdp td,
	#formulaire_regeneration_mdp label,
	#formulaire_regeneration_mdp input {
		display: block;
	}

	#email_regeneration {
		margin: 20px 0 0 !important;
	}

	#bouton_regeneration {
		margin: 5px 0 20px !important;
	}
}

/* Boutons heures */
#liste_boutons_heures {
	margin: 10px 0;
}

.owl-carousel .owl-item img {
	border-radius: 15px;
}

#image_produit > img {
	display: none;
}

#prix_ajout_panier {

}

#prix_ajout_panier > span,
#prix_ajout_panier > div,
#prix_ajout_panier > table {
	position: relative;
	display: block;
	padding-left: 50px;
	padding-bottom: 25px;
	counter-increment: line-number;
}

#prix_ajout_panier > span:last-child,
#prix_ajout_panier > div:last-child,
#prix_ajout_panier > table:last-child {
	padding-bottom: 35px;
}

#prix_ajout_panier > span:after,
#prix_ajout_panier > div:after,
#prix_ajout_panier > table:after {
	content: counter(line-number);
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 0;
	left: 0;
	width: 30px;
	height: 30px;
	background-color: var(--color-secondary);
	color: #fff;
	border-radius: 50%;
	font-size: 18px;
	font-weight: 700;
}

#prix_ajout_panier > .choix_billet_kit {
	counter-increment: ligne-billet;
}

#prix_ajout_panier > .choix_billet_kit::after {
	content: counter(ligne-billet) !important;
}



#prix_ajout_panier > span:before,
#prix_ajout_panier > div:before,
#prix_ajout_panier > table:before {
	content: "";
	position: absolute;
	top: 0;
	left: 14.5px;
	width: 1px;
	height: 100%;
	background-color: var(--color-secondary);
}

#prix_ajout_panier > span > span,
#prix_ajout_panier > div > span[class*="libelle"],
#prix_ajout_panier > div > div > span[class*="libelle"],
.addtocart-label { /* Label */
	color: var(--color-secondary);
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 10px;
	display: inline-block;
	margin-top: 2px;
}

#prix_ajout_panier > span input,
#prix_ajout_panier > span select,
#prix_ajout_panier > div input,
#prix_ajout_panier > div select,
#prix_ajout_panier > table input,
#prix_ajout_panier > table select {
	/*border: 1px solid var(--color-gray-2);*/
	height: 38px;
	font-size: 16px;
	border-radius: 5px;
	box-shadow: none;
}


/* Blocage des étapes */
div[id^="choix_"] + div[id^="choix_"]:not(.is-ok) {
	pointer-events: none;
	opacity: 0.5;
}

div[id^="choix_"] + div[id^="choix_"]:not(.is-ok) button,
div[id^="choix_"] + div[id^="choix_"]:not(.is-ok) span.liste_choix,
div[id^="choix_"] + div[id^="choix_"]:not(.is-ok) input {
	cursor: not-allowed !important;
}

div[id^="choix_"] + div[id^="choix_"]:not(.is-ok) button,
div[id^="choix_"] + div[id^="choix_"]:not(.is-ok) select,
div[id^="choix_"] + div[id^="choix_"]:not(.is-ok) input {
	background-color: #eee;
	pointer-events: none !important;
}

div[id^="choix_"] + div[id^="choix_"]:not(.is-ok) button {
	background-color: var(--color-gray-2);
	border: var(--color-gray-2);
}

/* Déblocage */
div[id^="choix_"].is-ok + div[id^="choix_"]:not(.is-ok),
div#choix_billets + div[id^="choix_"],
div#choix_plage + div#choix_billets {
	pointer-events: auto;
	opacity: 1;
}

div[id^="choix_"].is-ok + div[id^="choix_"]:not(.is-ok) button,
div[id^="choix_"].is-ok + div[id^="choix_"]:not(.is-ok) span.liste_choix,
div[id^="choix_"].is-ok + div[id^="choix_"]:not(.is-ok) input,
div#choix_billets + div[id^="choix_"] button,
div#choix_billets + div[id^="choix_"] span.liste_choix,
div#choix_billets + div[id^="choix_"] input,
div#choix_plage + div#choix_billets button,
div#choix_plage + div#choix_billets span.liste_choix,
div#choix_plage + div#choix_billets input {
	cursor: auto !important;

}

div[id^="choix_"].is-ok + div[id^="choix_"]:not(.is-ok) button,
div[id^="choix_"].is-ok + div[id^="choix_"]:not(.is-ok) select,
div[id^="choix_"].is-ok + div[id^="choix_"]:not(.is-ok) input,
div#choix_billets + div[id^="choix_"] button,
div#choix_billets + div[id^="choix_"] select,
div#choix_billets + div[id^="choix_"] input,
div#choix_plage + div#choix_billets button,
div#choix_plage + div#choix_billets select,
div#choix_plage + div#choix_billets input {
	pointer-events: auto !important;
}

div[id^="choix_"].is-ok + div[id^="choix_"]:not(.is-ok) button,
div#choix_billets + div[id^="choix_"] button
div#choix_plage + div#choix_billets button {
	background-color: var(--color-secondary);
	border: var(--color-secondary);
	cursor: pointer !important;
	pointer-events: auto !important;
}

.loader {
	color: var(--color-primary) !important;
}

#page_retour_paiement {
	padding: 0 15px;
	width: 75%;
	margin: 0 auto;
	text-align: center;
}

#page_retour_paiement #message_felicitations {
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	display: block;
	color: #3d4649;
	margin-bottom: 20px;
}

#page_retour_paiement #retour_paiement_remerciement {
	display: block;
}

#page_retour_paiement #retour_paiement_signature {
	display: block;
	margin: 10px 0 10px;
	font-size: 16px;
	font-weight: bold;
}