/**********
 * Global *
 *********/
:root {
	--primary-color: #f2622a;
	--global-text-color: #010101;
	--global-title-color: #f2622a;
	--global-background-color: #f9f9f9;
	--global-main-font: "Montserrat", "Arial", sans-serif;
	--global-secondary-font: "Open Sans", "Arial", sans-serif;
}

* {
	letter-spacing: 0;
}

html{
	margin: 0px;
	padding: 0px;
	color: #000000;
	font-size: 12px;
	border: 0px solid transparent;
	font-family: var(--global-main-font);
}
body{
	margin: 0px;
	padding: 0px;
	width: 100%;
}
a{ 
	outline: none;
	text-decoration: none;
	cursor: pointer;
	color: inherit;
}
img {
	border: none; 
	max-width: 100%;
}

.pure-g [class*="pure-u"] {
	font-family: var(--global-main-font);
}

.mid_height {
	min-height: 50vh;
}

:focus {
	outline:none;
}
::-moz-focus-inner {
	border:0;
}

::-moz-selection { 
	color: #FFF; 
	background: #F2622A; 
}
::selection  { 
	color: #FFF; 
	background: #F2622A; 
}
.compteurNum input::-moz-selection { 
	color: #000; 
	background: #FFF; 
}
.compteurNum input::selection  { 
	color: #000; 
	background: #FFF; 
}

::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color:    #aaaaaa;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
   color:    #aaaaaa;
   opacity:  1;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
   color:    #aaaaaa;
   opacity:  1;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
   color:    #aaaaaa;
}
:placeholder-shown {
  color:    #aaaaaa;
}

.alc{ text-align: center!important; }
.alr{ text-align: right!important; }
.prel { position: relative; }
.absolute{ position: absolute; }
.height100{ height: 100%; }
.ovhid{ overflow: hidden; }
.dib{ display: block; }
.dit{ display: table; }
.padT30{ padding: 30px 0 0 0; }
.padT50{ padding: 50px 0 0 0; }
.is-hidden{display: none;}
.fin{
	clear:both;
	line-height:0;
	height:0;
	font-size:1px;
}
.w70{ width: 70%; }
.w100{ width: 100%; }

/* SWAL2 */
#strErreur, 
#strInfo,
#strValide,
#strLink{ display: none; }

#map-canvas{ 
	width: 100%; 
	height: 250px; 
}

.flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.flex.sb {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.flex.sa {
	-ms-flex-pack: distribute;
	justify-content: space-around;
}
.flex.start {
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start; 
}
.flex.end {
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end; 
}
.flex.jcc {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.flex.ac {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.flex.col { 
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column; 
}
.acc {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.ac {
	-ms-flex-item-align: center;
	-ms-grid-row-align: center;
	align-self: center;
}
.wrap {
	-ms-flex-wrap: wrap;
		flex-wrap: wrap;
}

.strike{ text-decoration: line-through; }

.bold {
	font-weight: 700;
}

.content_max_width {
	max-width: 1144px;
	margin: 0 auto;
}

.container_max_width {
	max-width: 960px;
	margin: 0 auto;
}

/* CSS FILTER */

.blue_filter {
	-webkit-filter: invert(23%) sepia(81%) saturate(2039%) hue-rotate(189deg) brightness(89%) contrast(98%);
	filter: invert(23%) sepia(81%) saturate(2039%) hue-rotate(189deg) brightness(89%) contrast(98%);
}

.red_filter {
	-webkit-filter: invert(45%) sepia(33%) saturate(1941%) hue-rotate(319deg) brightness(103%) contrast(89%);
	filter: invert(45%) sepia(33%) saturate(1941%) hue-rotate(319deg) brightness(103%) contrast(89%);
}

/**********/

html, body {
	height: 100%;
}

* {
	margin:0;
	padding:0;
}

p {
	font-family: var(--global-secondary-font);
	font-weight: 300;
	font-size: 16px;
	line-height: 22px;
}

.popins {
	font-family: var(--global-secondary-font);
}

/* SIDEBAR MENU */
.sidebar_left_menu {
	background-color: #f5f5f5;
}

.sidebar_left_menu_nav {
	position: fixed;
	width: 16.6667%;
	max-width: 280px;
}

@media screen and (max-width: 1024px) {
	.sidebar_left_menu_nav {
		width: 20.833%;
	}
}

.sidebar_left_menu .logoTop {
	padding: 0 30px;
	display: block;
	margin-top: 30px;
	margin-bottom: 40px;
	transition: all 0.3s ease;
}

.sidebar_left_menu .logoTop:hover {
	transform: scale(1.02);
}

.sidebar_left_menu .logoTop img {
	width: auto;
	max-width: 100%;
}

.sidebar_left_menu .element_1 a,
.sidebar_left_menu .element_48 a,
.sidebar_left_menu .element_50 a {
	background: url('/imgs/picto/menu-produit-orange.png') no-repeat 18px center / auto;
}
.sidebar_left_menu .element_1 a:hover,
.sidebar_left_menu .element_1.sel a,
.sidebar_left_menu .element_48 a:hover,
.sidebar_left_menu .element_48.sel a,
.sidebar_left_menu .element_50 a:hover,
.sidebar_left_menu .element_50.sel a {
	background-image: url('/imgs/picto/menu-produit-blanc.png');
}

.sidebar_left_menu .element_12 a {
	background: url('/imgs/picto/menu-panier-orange.png') no-repeat 18px center / auto;
}
.sidebar_left_menu .element_12 a:hover,
.sidebar_left_menu .element_12.sel a {
	background-image: url('/imgs/picto/menu-panier-blanc.png');
}

.sidebar_left_menu .element_26 a {
	background: url('/imgs/picto/menu-client-orange.png') no-repeat 18px center / auto;
}
.sidebar_left_menu .element_26 a:hover,
.sidebar_left_menu .element_26.sel a {
	background-image: url('/imgs/picto/menu-client-blanc.png');
}

.sidebar_left_menu .btnStd {
	font-size: 14px;
}

.sidebar_left_menu ul {
	list-style-type: none;
	margin-bottom: 50px;
	padding: 0 30px;
}

.sidebar_left_menu li {
	color: #333;
	box-sizing: border-box;
	margin: 0 0 15px 0;
	font-family: var(--global-secondary-font);
	font-weight: 600;
	background-color: #fff;
	border: 1px solid #E1E1E1;
	border-radius: 8px;
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
}

.sidebar_left_menu li:hover {
	color: #fff;
	background-color: var(--primary-color);
	border-color: var(--primary-color);
	transform: translateX(5px);
	box-shadow: 0 4px 12px rgba(242,98,42,0.25);
}

.sidebar_left_menu li.sel {
	color: #fff;
	background-color: var(--primary-color);
	border-color: var(--primary-color);
	box-shadow: 0 2px 8px rgba(242,98,42,0.3);
}

.sidebar_left_menu li.sel::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 4px;
	background: #000;
}

.sidebar_left_menu li a {
	padding: 18px 20px 18px 65px;
	display: block;
}

.sidebar_left_menu li img {
	width: 32px;
	height: 32px;
	margin-right: 15px;
}

.sidebar_left_menu li img.filter {
	-webkit-filter: brightness(0) invert(1);
	filter: brightness(0) invert(1);
}

.sidebar_left_menu li img[src=""] {
	display: none;
}

.sidebar_left_menu li span {
	font-size: 1.4em;
	font-weight: 600;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	letter-spacing: -0.02em;
}

.sidebar_left_menu .link_offre {
	margin: 25px 15px;
}

.sidebar_left_menu .catalogue {
	margin: 0 30px;
	padding-bottom: 30px;
}

.sidebar_left_menu .catalogue a {
	border: 2px solid #E1E1E1 !important;
	border-radius: 8px !important;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	text-align: left;
	text-transform: none;
	font-size: 15px;
	line-height: 20px;
	padding: 16px 20px;
	background: #fff !important;
	color: #333 !important;
	font-weight: 600;
	transition: all 0.3s ease;
}

.sidebar_left_menu .catalogue a:hover {
	background: #f5f5f5 !important;
	border-color: var(--primary-color) !important;
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.sidebar_left_menu .catalogue a img {
	margin: 0 10px 0 0;
	filter: none;
	width: 24px;
	height: 24px;
}

h3{
	color: var(--global-title-color);
	font-size: 20px;
}

/***/

.nav .encours, .nav a.link:hover {
    background: #F2622A;
    color: #fff;
}
.nav{ display: table; margin: 0 auto; }
.nav a {
    color: #000;
    display: block;
    float: left;
    font-size: 16px;
	font-weight: 700;
    margin: 0 5px;
    padding: 10px 20px;
}
.encours {
    background: #F2622A;
    color: #fff;
    padding: 3px;
    text-align: center;
}
.nav span{ 
    display: block;
    float: left;
    padding: 0 5px;
}

.mobile_options {
	display: none;
}

/***/

/* CUSTOM SEARCHBOX */
.reg_contentMenu .search {
	margin: 0 auto;
}

.reg_contentMenu .search form {
	margin-left: 15px;
}

.reg_contentMenu .search form:after {
	content: '';
	display: block;
	height: 48px;
	width: 48px;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 100;
	background-color: var(--secondary-color);
	background-image: url('/imgs/picto/rechercher.png');
	background-repeat: no-repeat;
	background-position: center;
	background-size: 28px;
}

.reg_contentMenu .search input,
input.recherche {
	padding: 0 20px;
	height: 50px;
	width: 100%;
	box-sizing: border-box;
	border: 2px solid #E1E1E1;
	border-radius: 25px;
	font-size: 15px;
	font-weight: 400;
	color: #333;
	text-indent: 40px;
	background: #f5f5f5;
	transition: all 0.3s ease;
}

.reg_contentMenu .search input:focus,
input.recherche:focus {
	outline: none;
	border-color: var(--primary-color);
	background: #fff;
	box-shadow: 0 0 0 3px rgba(242,98,42,0.1);
}
input.recherche{
	text-align: center;
	text-indent: 0px;
	min-width: 350px;
}
.reg_contentMenu .search form button {
	display: block;
	height: 35px;
	width: 35px;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 100;
	border: none;
	background-color: var(--secondary-color);
	cursor: pointer;
}

.reg_contentMenu .search form button img {
	width: 20px;
	vertical-align: middle;
}

.reg_contentMenu .search input:placeholder-shown {
	font-size: 14px;
	font-weight: 300;
	color: #313439;
	font-style: italic;
}

.reg_contentMenu .search svg {
	fill: #fff;
	background-color: red;
}


/*************
**** BODY ****
**************/

.sous-titre {
	text-align:center;
	color: #313131;
}
.bkg-alice{background: #ebebeb;}
.reg_content {
	width:100%;
	display:block;
	margin: 0 auto;
	padding: 50px 0;
}
.pad15{
	padding: 15px;
}
.pad25{
	padding: 25px;
}
.pad30{
	padding: 30px;
}
.pad50 {
	padding: 50px;
}
.pad50NoTop {
	padding: 0 50px 50px 50px;
}
.reg_content_pres{
	width: 100%;
    display: block;
    margin: 0 auto;
}
.reg_contentMenu {
	max-width: 1920px;
	width: 95%;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	margin: 0 auto;
	padding: 12px 0;
}

.noresult{
	padding: 50px 0;
	text-align: center;
	font-size: 2em;
	font-weight: 700;
}

.reg_contentMenu .btnStd.disconnect,
.reg_contentMenu .btnStd.panier{
	padding: 14px 24px;
	border-radius: 25px;
	margin: 0 0 0 auto;
	text-transform: none;
	font-weight: 600;
	font-size: 15px;
	border: 2px solid transparent;
	transition: all 0.3s ease;
}

.reg_contentMenu .btnStd.panier {
	background: var(--primary-color);
	box-shadow: 0 2px 8px rgba(242,98,42,0.25);
}

.reg_contentMenu .btnStd.panier:hover {
	background: #d9551f;
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(242,98,42,0.35);
}

.reg_contentMenu .btnStd.disconnect {
	background: #fff;
	color: #666;
	border-color: #E1E1E1;
	margin-left: 10px;
}

.reg_contentMenu .btnStd.disconnect:hover {
	background: #f5f5f5;
	border-color: #999;
	color: #333;
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.reg_contentMenu .btnStd.disconnect img,
.reg_contentMenu .btnStd.panier img {
	width: 20px;
	margin-right: 10px;
	vertical-align: text-bottom;
}

/* Required */
.hidden{opacity: 0;}
.visible{opacity: 1;}

/*Select styles*/
.select-style {
    overflow: hidden;
    /*background: url('/imgs/picto/chevron-up.png') no-repeat 99% center;*/
	border-radius: 12px;
	border: 2px solid #e1e1e1;
	font-size: 1.2em;
	display: block;
	background: none;
	margin: 25px 0 15px 0;
	text-transform: none;
	position: relative;
}

.select-style::after {
	font-family: "Font Awesome 5 Free";
	content: "\f078";
	font-weight: 900;
	border-radius: 0 12px 12px 0;
	color: #fff;
	width: 70px;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	position: absolute;
	z-index: -1;
	right:-2px;
	top: 0;
	line-height: 100%;
	font-size: 2em;
	background-color: var(--global-title-color);
}

.select-style.min{ 
	width: 30%; 
}

.select-style select:focus {
	outline: none;
	border: 2px solid var(--global-title-color);
	-webkit-transition: all 0.2s ease-in;
    -moz-transition: all 0.2s ease-in;
    -o-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;
}

.select-style select {
    width: 100%;
    position: relative;
    border: none;
    box-shadow: none;
    border-radius: 12px;
    background-color: transparent;
    background-image: none;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
	display: block;
	height: 100%;
	margin: 0;
	font-family: var(--global-secondary-font);
	font-weight: 700;
	padding: 15px 20px;
	-webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

select.selectStd option{
	color: #000000;
	display: block;
	font-size: 14px;
	line-height: 38px;
	padding:2px 0;
	margin: 0;
	text-indent:5px;	
}

.select-style select option,
.ui-menu .ui-menu-item{
	display: block;
	font-size: 15px;
	line-height: 30px;
	padding:2px 0;
	margin: 0;
	color: #000000;
	text-indent:5px;	
}

.select-style input.dateInput{
	border: 2px solid rgba(0, 0, 0, 0.15);
	-webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

.select-style input.dateInput:focus{
	-webkit-transition: all 0.2s ease-in;
    -moz-transition: all 0.2s ease-in;
    -o-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;
}

/***/

/* Custom file input */
.inputfile {
	width: 0.1px;
	height: 0.1px;
	opacity: 0;
	overflow: hidden;
	position: absolute;
	z-index: -1;
}

.inputfile + label {
    font-size: 1.25em;
    font-weight: 700;
    color: white;
    background-color: black;
    display: inline-block;
}

.inputfile:focus + label,
.inputfile + label:hover {
    background-color: red;
}

.inputfile + label {
	cursor: pointer; /* "hand" cursor */
}

.inputfile:focus + label {
	outline: 1px dotted #000;
	outline: -webkit-focus-ring-color auto 5px;
}

.inputfile + label span {
	font-family: var(--global-secondary-font);
	font-weight: 700;
	text-transform: uppercase;
}

.inputfile + label svg {
	margin-right: 5px;
	vertical-align: text-top;
}

.js .inputfile {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}

.no-js .inputfile + label {
    display: none;
}

.inputfile:focus + label,
.inputfile.has-focus + label {
    outline: 1px dotted #000;
    outline: -webkit-focus-ring-color auto 5px;
}


/***/

.page_header .page_header_image {
	border-radius: 35px;
	border: 1px solid var(--primary-color);
	margin-right: 25px;
}

.page_header.col .page_header_image {
	margin: 0 0 25px 0;
}

.page_header .page_header_image img {
	width: 32px;
	height: 32px;
	padding: 15px;
}

.reg_contentStd{
	max-width: 1280px;
	width: 100%;
	margin: 0 auto;
	padding: 0 0 50px 0;
}

.m0auto {
	margin: 0 auto;
}

.pt50 {
	padding-top: 50px;
}

.pt25 {
	padding-top: 25px;
}

.pb50 {
	padding-bottom: 50px;
}

.pb25 {
	padding-bottom: 25px;
}

.ptb25 {
	padding: 25px 0;
}

.ptb50 {
	padding: 50px 0;
}

/* PAGINATOR */
.paginator .nav span {
	font-size: 1.8em;
}

.paginator {
	width: 60%;
	margin: 0 auto;
}

.paginator td {
	padding: 15px 0;
}

.paginator a,
.paginator i {
	font-size: 22px; 
	color: #2d3436; 
	padding: 50px 5px; 
	line-height: 100%;
}

.paginator .encours {
	color: #95A5A6; 
}

/* GLOBAL PAGE TITLE */
.global_page_title {
	text-transform: uppercase;;
	letter-spacing: 1px;
	font-size: 2em;
	color: var(--global-title-color);
}

.global_page_title.white {
	color: #fff;
}

.global_page_title.m0auto.sep:after {
	margin-left: auto;
	margin-right: auto
}


/* GLOBAL FORM */
.global_form:not(.newsletter_form):not(.login) legend {
	font-family: var(--global-secondary-font);
	font-weight: 700;
	text-transform: uppercase;
	font-size: 1.4em;
	letter-spacing: 0.5px;
	padding-bottom: 15px;
	padding-right: 25px;
	border-bottom: 2px solid var(--primary-color);
	margin-bottom: 15px;
}

.global_form fieldset {
	padding: 0;
}

.global_form input,
.global_form textarea,
.global_form input.inputfile + label,
.global_form .select select {
	border-radius: 12px;
	border: 2px solid #c6c6c6;
	font-size: 1.2em;
	display: block;
	background: none;
	padding: 15px 25px;
	text-transform: none;
	font-family: var(--global-secondary-font);
	font-weight: 500;
	box-sizing: border-box;
}

.global_form .select select {
	background-color: transparent;
    background-image: none;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

.global_form label:not(.title) {
	font-size: 14px;
	padding-bottom: 15px;
	padding-left: 5px;
	display: block;
	font-weight: 600;
	color: var(--global-text-color);
	font-family: var(--global-secondary-font);
}

.global_form label.required:after {
	content: '*';
	display: inline-block;
	padding-left: 5px;
}

.global_form .select {
	position: relative;
}

.global_form .select::after {
	font-family: "Font Awesome 5 Free";
	content: "\f078";
	font-weight: 900;
	border-radius: 12px;
	color: #fff;
	width: 75px;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	position: absolute;
	z-index: -1;
	right: 0;
	top: 0;
	line-height: 100%;
	font-size: 2em;
	background-color: var(--global-title-color);
}

.global_form .select select:focus {
	outline: none;
	border: 2px solid var(--global-title-color);
	-webkit-transition: all 0.2s ease-in;
    -moz-transition: all 0.2s ease-in;
    -o-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;
}

.global_form .select select option {
	height: 100%;
}

.global_form input.inputfile + label {
	background-color: var(--primary-color);
	border-color: var(--primary-color);
	border-width: 4px;
	-webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

.global_form input.inputfile + label:hover {
	background-color: var(--global-title-color);
	border-color: var(--global-title-color);
	-webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

.global_form textarea {
	min-height: 250px;
	padding-top: 25px;
	resize: none;
	font-family: var(--global-secondary-font);
	font-weight: 400;
	font-size: 1.2em;
}

.global_form cite,
.global_form cite a {
	color: var(--primary-color);
	display: block;
	margin-left: auto;
	text-align: right;
	padding-right: 10px;
}

.global_form cite a:hover {
	color: #000;
}

.global_form button {
	margin: 20px 0 20px 0;
	/*padding: 12px 45px;*/
}

.global_form button img {
	-webkit-filter: brightness(0) invert(1);
	filter: brightness(0) invert(1);
	width: 23px;
	margin-right: 10px;
	vertical-align: bottom;
}

.global_form .mid {
	margin-left: auto;
	margin-right: auto;
}

.global_form .right {
	margin-left: auto;
	text-align: right;
}

.full {
	width: 100%;
}

/********
*  TOP  *
*********/
.mobile_menu_button {
	display: none;
}

.user_menu .user_menu_link {
	padding: 15px;
	display: inline-block;
	color: #313131;
	font-family: var(--global-secondary-font);
	font-weight: 400;
	font-size: 1.15em;
	-webkit-transition: padding 0.3s ease;
    -moz-transition: padding 0.3s ease;
    -o-transition: padding 0.3s ease;
    transition: padding 0.3s ease;	
}

.user_menu .user_menu_link img {
	margin: 10px auto;
	display: block;
	width: 40px;
}

.user_name i {
	vertical-align: text-top;
	padding-left: 5px;
}

.user_menu .user_menu_link span.user_menu_title {
	display: block;
	text-align: center;
}

.user_sign_out {
	text-transform: uppercase;
	padding-top: 5px;
	align-items: baseline;
}

.user_sign_out:hover {
	color: var(--global-title-color);
}

/* Fix pour le header global du site */
header:not(.miniBar) {
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	display: block !important;
}

#header:not(.miniBar),
.reg_contentTop:not(.miniBar){
	z-index:100;
	top:0;
	width: 100%;
	background: #fff;
	box-shadow: 0 2px 12px rgba(0,0,0,0.08);
	border-bottom: 1px solid #E1E1E1;
	height: auto !important;
	min-height: 0 !important;
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;		
}

.user_sign_out {
	color: var(--primary-color);
}

.user_menu .totPan {
	display: block;
	font-family: var(--global-secondary-font);
	font-weight: 400;
	color: var(--global-title-color);
	text-transform: uppercase;
	padding-top: 5px;
}

.reg_contentMenu .user_name {
	padding-left: 15px;
	font-size: 15px;
	font-weight: 600;
	color: #333;
}

.reg_topGauche a {
	padding: 8px 15px;
	border-radius: 20px;
	transition: all 0.3s ease;
	display: inline-flex;
	align-items: center;
}

.reg_topGauche a:hover {
	background: #f5f5f5;
}

.reg_topGauche a img {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #f5f5f5;
	padding: 6px;
}

.contentMenuTop { display: none; }
.menuTab {
	display: table;   
	margin: 0 auto;
}
.menuRow {display: table-row;}
.menuTab .menuRow .menuCell.resp{ display: none; }
.menuCell.w50,.w50{ width: 50%; }
.menuCell a.none{
	display: table-cell;
  text-align: center;	
	position: relative;
	display: inline-block;
	outline: none;
	color: #000; 
	font-size: 16px; 
	margin: 0px auto;
	text-align: center;
	letter-spacing:0px;
	padding: 10px 0px;
	transition: 0.8s;
	width: 100%;
	font-weight: 600;
	text-transform: uppercase;
	border-top: 3px solid transparent;
	line-height: 30px;
}
.menuCell a.none:hover,
.menuCell a.sel{
	color: var(--global-title-color);
}
.menuCell {
	display: block;
    text-align: left;
	float: right;
	padding: 0 25px;
	-webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}
.menuCell:hover{ border-radius: 0 0 0 12px; transition: all 0.5s ease-in-out;}
.menuCell.spec:hover{ background: none; }
.menuCell.fb{margin: 0 auto; width: 40px;}
.menuCell.fb:hover, .menuCell.tw:hover{background: none;}
.menuCell a:hover {color: #557777; transition: 0.5s}
.menuTab .menuRow .menuCell .rs{ display: block; }
.menuTab .menuRow .menuCell .rs.facebook{color: #292947; font-size: 21px; height: 100%; width: 100%; transition: all 0.5s;}
.menuTab .menuRow .menuCell .rs.facebook:hover{transition: all 0.2s ease-in-out; color: #F48024;}
.menuTab .menuRow .menuCell .rs.linkedin{color: #292947; font-size: 21px; height: 100%; width: 100%; transition: all 0.5s;}
.menuTab .menuRow .menuCell .rs.linkedin:hover{transition: all 0.2s ease-in-out; color: #F48024;}
.menuTab .menuRow .menuCell .rs.twitter{color: #292947; font-size: 21px; height: 100%; width: 100%; transition: all 0.5s;}
.menuTab .menuRow .menuCell .rs.twitter:hover{transition: all 0.2s ease-in-out; color: #F48024;}
.menuTab,.botTab {
	display: table;   
	margin: 0 auto;
	width:100%;
}
.menuTab.bloc1 .padding{ padding: 10px 0 0 0; }
.menuRow,.botRow {display: table-row;}

.miniBar{
	position: fixed;
	background: rgba(255,255,255,0.99);
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
	width: 100%;
	left: 0;
	right: 0;
	top: 0;
	z-index: 9999;
	border-bottom: 1px solid #E1E1E1;
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;		
}

/* Éviter le saut de page quand miniBar devient fixed */
.miniBar ~ .main_right_content,
body:has(.miniBar) .main_right_content {
	padding-top: 80px;
}

.miniBar .padding{ padding: 5px; }
.miniBar .reg_contentMenu{ padding: 5px 0; }
.miniBar a.name{ 
	font-size: 30px; 
	line-height: 30px;
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;		
}

.miniBar a.none{ padding: 5px 0; font-size: 14px; }
.miniBar a.logoTop{
	padding: 0px;
	max-width: 120px;
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;		
}

.miniBar a.logoTop strong{
	font-size: 22px;
	background-position: 0 -10px;
	min-height: 60px;
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;		
}

.miniBar .user_menu .user_menu_link {
	padding: 0 10px;
	-webkit-transition: padding 0.3s ease;
    -moz-transition: padding 0.3s ease;
    -o-transition: padding 0.3s ease;
    transition: padding 0.3s ease;	
}

.miniBar .user_menu .user_menu_link span.user_menu_title,
.miniBar .user_menu .user_menu_link .user_sign_out {
	display: none;
}

.miniBar .reg_topGauche.flol{ 
	width: 10%; 
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;		
}

.miniBar .reg_topDroite.flor{ 
	width: 90%; 
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;	
}

.miniBar .blocRs{ 
	opacity: 0; 
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;	
}

.miniBar #user-login i{
	font-size: 1em;
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;	
}

/* MENU RESPONSIVE */
.responsive-menu {
  display: none;
}

.menu-tab {
  width: 90px;
  height: 70px;
  position: fixed;
  z-index: 100000;
  top: 0px;
  left: 0px;
  cursor: pointer;
  transition: all .5s ease-in-out;
  /*end of div*/
}

.menu-tab div {
  width: 33px;
  height: 4px;
  background-color: #2d2d2d;
  display: block;
  margin: 5px 28px;
  transition: all .5s ease-in-out;
}

.menu-tab div:nth-child(1) {
  margin-top: 20px;
}

/*end of menu-tab*/
.menu-tab.active {
  left: 335px;
  transition: all 500ms ease-in-out;
  background-color: rgba(255, 255, 255, 0.5);
}

.menu-tab.active #one {
  -webkit-transform: translateY(9px) rotate(-135deg);
          transform: translateY(9px) rotate(-135deg);
  transition: all .5s ease-in-out;
  background-color: var(--primary-color);
}

.menu-tab.active #two {
  opacity: 0;
  transition: .4s ease;
}

.menu-tab.active #three {
  -webkit-transform: translateY(-9px) rotate(-45deg);
          transform: translateY(-9px) rotate(-45deg);
  transition: all .5s ease-in-out;
  background-color: var(--primary-color);
}

.menu-hide {
  width: 335px;
  left: -335px;
  height: 100vh;
  position: fixed;
  z-index: 10000;
  top: 0px;
  transition: all .5s ease-in-out;
  /*end of nav*/
}

.menu-hide nav {
  /*end of ul*/
}

.menu-hide nav ul {
  /*end of li*/
}

.menu-hide nav ul li {
  height: 50px;
  list-style-type: none;
  text-align: center;
  line-height: 50px;
  transition: all .5s ease;
  display: flex;
  justify-content: center;
  align-items: center;
}

.menu-hide nav ul li:nth-child(1) {
  margin-top: 45px;
}

.menu-hide nav ul li:hover {
  background-color: #ffffff;
  transition: all .5s ease;
}

.menu-hide nav ul li a {
  margin: 15px 25px;
  text-decoration: none;
  color: #f1f1f1;
  font-size: 1.5em;
  display: block;
  text-transform: uppercase;
}

/*end of menu-hide*/
.menu-hide.show {
  left: 0px;
  background-color: var(--primary-color);
  transition: all .5s ease-in-out;
}

#user-login i{
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;	
}

/* ESPACE CLIENT */
.login-page{
	width: 280px;
	background-color: #FFFFFF;
	box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2), 0 5px 5px 0 rgba(0, 0, 0, 0.24);
	color: #313131;
	position: absolute;
	z-index: 1000;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
}

.login-page-pad{padding: 20px 25px;}
.login-page legend{font-size: 1.4em; text-align: center; padding-bottom: 15px;}
.login-page button{width: 100%; margin-top: 15px;}
.login-page cite.error{color: red; padding-top: 3px; display: inline-block; font-size: 0.85em;}
.login-page .infos-message{font-style: normal; text-align: center; border-top: 1px solid #f15d5f; padding: 15px 0 5px 0; margin: 20px 0 0 0; display: block; font-size: 1em;}
.login-page .infos-message a{font-style: normal; color: #FFF; padding: 15px 25px; font-size: 12px; }
.login-page fieldset{padding: 10px 0;}
.login-page input.std{margin-top: 5px; border: none; background-color: #f1f1f1; width: 100%; text-indent: 15px; padding: 5px 0;}

.register-form,
.login-form{
	font-size: 1.2em;
}

.register-form {
	display: none;
}

.my-profil i{
	vertical-align: middle; 
	display: inline-block; 
	font-size: 1.6em; 
	color: var(--primary-color);
	min-width: 40px;
	text-align: center;
}

.my-profil span {
	vertical-align: bottom; 
	font-size: 1.2em;
}

.my-profil a {
	transition: text-indent .3s ease; 
	display: inline-block;
}

.my-profil a:hover {
	text-indent: 10px; 
	transition: text-indent .3s ease;
}

/*************
*** BOTTOM ***
**************/

/* Footer assurance */
.footer_assurance {
	background-color: #e1e1e1;
}

.footer_assurance img {
	display: block;
	margin: 0 auto;
}

.footer_assurance strong {
	text-align: center;
	display: block;
	padding: 15px;
	font-family: var(--global-secondary-font);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-size: 1.4em;
	line-height: 1.5em;
}

/* Footer newsletter */
footer .newsletter {
	background-color: #313131;
	color: #fff;
}

footer .newsletter .newsletter_form {
	border-right: 2px solid var(--global-title-color);
}

footer .newsletter legend {
	font-size: 2em;
	letter-spacing: 0.5px;
	padding: 0 15px;
}

footer .newsletter input {
	color: #fff;
	display: inline-block;
	border-color: #fff;
	width: 320px;
	max-width: 100%;
	margin: 0
}

footer .newsletter input::placeholder {
	color: #fff;
}

footer .newsletter button {
	display: inline-block;
	margin: 0 0 0 10px;
}

/* Footer social */
.social_links_col strong {
	font-size: 1.6em;
	text-align: center;
	display: block;
	letter-spacing: 0.5px;
}

.social_links_col .social_links_list {
	padding: 15px 0;
}

.social_links_col a {
	width: 40px;
	height: 40px;
	display: inline-block;
	background-color: var(--primary-color);
	border-radius: 12px;
	margin: 0 15px;
}

.social_links_col a i {
	font-size: 27px;
	color: #fff;
	line-height: 40px;
	display: block;
	text-align: center;
}

/* Footer - Copyright */



/** PART 1 ***/

.part1{padding: 0 0 50px 0; }
.botCell{
	display: table-cell;
    text-align: center;
    /*border-style: solid;
    border-width: 2px 0px 2px 0px;
    border-color: #F48024;*/
    padding-top: 8px;
    width: 25%;
}

.fa.hand{
	margin: 0 auto;
	text-align: center;
	font-size: 8em;
	display: block;
}

.botCell strong{
	color: #ddd;
    font-size:18px;
    font-weight: normal;
    padding: 40px 0;
    text-align: center;
    text-transform: uppercase;	
}

/** PART 2 ***/

#map-canvas{ 
	width: 100%; 
	height: 529px;
	margin: 0 auto;
}

.spanMaps{
	display:block;
	color:var(--primary-color);
	font-size: 24px;
	text-align:center;
	font-weight: 600;
}

.part2{
	/*background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.55)) repeat scroll 0% 0%, rgba(0, 0, 0, 0) url("/imgs/slider/slide-6.jpg") no-repeat scroll center center / cover;*/
	background-color: #313131;
	border-top: 1px solid #fff;
}

.contentBotLien {
	display: table;
	margin: 0 auto;
}

.contentBotLien strong{
    font-size: 20px;
    letter-spacing: 2px;
    padding: 8px 0;
    color:#FFFFFF;
    text-transform: uppercase;	
	display:table;
	border-bottom: 3px solid var(--global-title-color);
	font-family: var(--global-secondary-font);
	font-weight: 700;
	margin-bottom: 35px;
}

.contentBotLien > span {
	display: block;
}

.contentBotLien span span{
	display:block;
    font-size: 12px;
    padding: 10px 0;
    color: #FFF;
	text-align:center;
	font-size: 1em;
}

.contentBotLien a {
	display:block;
    font-size: 16px;
    padding: 8px 0;
    color:#FFFFFF;
    font-family: var(--global-secondary-font);
	font-weight: 300;
}

.contentBotLien a:hover {
	color:var(--primary-color);
}

.contentBotLien cite {
	font-size: 16px;
	color: #FFFFFF;
	font-style: italic;
}

.contentBotLien p {
	font-size: 16px;
	color: #FFFFFF;
	font-style: italic;
}

.contentBotLien i {
	display:block;
	font-size: 2em;
	padding: 5px 0 2px 0;
}
.marb10{
	margin: 0 0 20px 0;
}

.contentBotLien.contact p {
	text-align: left;
	display: inline-block;
	margin: 0 auto;
}

.contentBotLien.contact p img {
	vertical-align: middle;
	margin-right: 15px;
}

.contentBotLien.contact p span {
	display: inline-block;
	vertical-align: middle;
}


/** PART 3 ***/

.part3 {
	padding: 15px 70px;
	background:var(--primary-color);		
}
.part3 a,.part3 span{
	font-size: 14px;	
	color:#FFF;	
}

.blocRs{display: table; margin: 0 auto;}
.blocRs a{padding: 15px 10px; display: inline-block;}
.blocRs a i{font-size: 1.7em;}

/********************
**** BACK TO TOP ****
********************/

#returnOnTop {
    background: url('/imgs/picto.backtotop.png') no-repeat;
    bottom: 1%;
    cursor: pointer;
    display: none;
    filter: alpha(opacity = 50); /* IE < 8 */
    height: 48px;
    opacity: 0.5;
    position: fixed;
    right: 1%;
    width: 48px;
}
#returnOnTop:hover {
    filter: alpha(opacity = 100); /* IE < 8 */
    opacity: 1;
}
#loading{
	width: 0%;
	height: 3px;	
	background: var(--primary-color);
	position: fixed;	
}

/**************
*** GENERAL ***
**************/
.reg_contentPad{ width: 95%; margin: 0 auto; padding: 0 0 30px 0; }
.reg_contentPad.bgIntro{ padding: 30px 0 0 0; }
.contact .reg_contentPad.bgIntro{ padding: 0px 0 30px 0; }
.reg_content p{
	width: 100%;
	margin: 0 auto;
	font-size: 17px;
	line-height: 20px;
	padding: 20px 0;
	color: #193333;
}

.logo{
	max-width: 250px;
}

.logoTop img{
	width: 100%;
	margin: 0 auto;
	display: block;
    -webkit-transition: all 0.2s ease-in;
    -moz-transition: all 0.2s ease-in;
    -o-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;
}


/**************
*** ACCUEIL ***
***************/

.category_list .category img {
	display: block;
}

.category .category_image {
	width: 100%;
}

.category_list .category .picto {
	padding: 8px 0 20px 0;
	margin: 0 auto;
}

.category .category_name {
	font-weight: 400;
	padding: 0 25px;
}


/*************************
**** CONNEXION CLIENT ****
*************************/

.login_page {
	background-color: var(--global-background-color);
	min-height: 100vh;
}

.login_page .logo {
	max-width: 300px;
}

.login_page form {
	background-color: #fff;
	padding: 50px;
}

.login_page form .flex {
	margin-bottom: 30px;
}

.login_page form img {
	width: 32px;
}

.login_page form input {
	position: relative;
	border-radius: 0 12px 12px 0;
	border-left: none;
}

.login_page form span {
	background-color: var(--primary-color);
	border-radius: 12px 0 0 12px;
	width: 70px;
	border-top: 2px solid #c6c6c6;
	border-left: 2px solid #c6c6c6;
	border-bottom: 2px solid #c6c6c6;
}

.login_page form span.mail {
	background: var(--primary-color) url('/imgs/picto/user-blanc-2.png') no-repeat center / 40px;
}

.login_page form span.password {
	background: var(--primary-color) url('/imgs/picto/login-key-blanc.png') no-repeat center / 40px;
}

.login_page form .btnStd {
	padding: 20px 35px;
}

.login_page h2 {
	font-size: 20px;
}

.login_page span {
	font-family: var(--global-secondary-font);
	font-weight: 400;
	color: #313131;
	font-size: 16px;
	display: inline-block;
	padding-bottom: 15px;
}

.login_page cite a {
	font-family: var(--global-secondary-font);
	font-weight: 500;
}


/****************************
**** MOT DE PASSE OUBLIÉ ****
*****************************/



/************************
**** CRÉATION COMPTE ****
************************/

.creation_compte fieldset {
	margin: 20px 0;
}


/************************
**** QUI SOMMES-NOUS ****
************************/

.qui-sommes-nous img {
	border-radius: 50%;
}

.qui-sommes-nous .part-2 img {
	box-shadow: 10px -5px var(--global-title-color);
}


/********************************
**** DETAIL CATÉORIE PRODUIT ****
*********************************/

/* Sort && Filters */
.detail-categorie .product_list_filter .custom_pad {
	padding: 0 50px;
}

/* Liste produit */
.product_list .product_list_header {
	background-color: #F2622A;
	color: #FFF;
}

.product_list .product_list_header span {
	text-transform: uppercase;
}

.product_list .product:nth-child(odd) {
	background-color: #FFF;
}

.product_list .product .product_image img {
	max-width: 100px;
	margin: 0 auto;
	display: block;
}

.product_list .product span.title {
	display: none;
}

.product_list .product .nonpaye {
	color: #ff0000;
}

.product_list .product .paye {
	color: #2fc04b;
}

/* Accordion styles */
.product_accordion {
  border-radius: 12px;
  overflow: hidden;
}

.product_accordion_item {
  width: 100%;
  color: var(--global-text-color);
  overflow: hidden;
}

.product_accordion .tab-label {
  display: flex;
  justify-content: space-between;
  font-weight: bold;
  cursor: pointer;
}

.product_accordion .tab-label:hover:after {
  color: var(--primary-color);
  padding: 0;
}

.product_accordion .tab-label::after {
  content: "❯";
  width: 1em;
  height: 1em;
  text-align: center;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.product_accordion .tab-content {
  max-height: 0;
  color: #2c3e50;
  background: white;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.product_accordion .tab-close:hover {
  background: #1a252f;
}

.product_accordion .product_accordion_item > label {
	padding: 0;
	font-size: 12px;
}

.product_accordion .product_accordion_item > label:before {
	display: none;
	margin-left: 0;
}

.product_accordion .product_accordion_item .tab-content label {
	padding-left: 32px;
	margin: 15px 0;
}

input:checked + .tab-label {
  color: var(--primary-color);
}

input:checked + .tab-label::after {
  transform: rotate(90deg);
}

input:checked ~ .tab-content {
  max-height: 100vh;
}



/***********************
**** DETAIL PRODUIT ****
***********************/

.product_infos .detail_produit_header .product_price_ht {
	margin-left: auto;
	padding: 12px 30px;
	font-size: 25px;
	color: #fff;
	font-weight: 700;
	display: inline-block;
	background-color: #F2622A;
}

/* Détail produit - infos */
.product_quantity span {
	font-family: var(--global-secondary-font);
	font-weight: 300;
	font-size: 1em;
}

.product_quantity p {
	font-family: var(--global-secondary-font);
	font-weight: 600;
}

.product_quantity i {
	font-size: 18px;
	cursor: pointer;
}

.detail_produit .product_declinaison label {
	padding-left: 50px;
	margin: 0;
}
.detail_produit .product_image{
	border: 1px solid #E1E1E1;
}
.detail_produit .product_image img {
	width: 100%;
	box-sizing: border-box;
	padding: 15px;
}

.detail_produit .addPanier{
	border-top: solid 1px #E1E1E1;
	padding: 10px 0;
}

.detail_produit .product_infos h1 {
	font-size: 2em;
	color: var(--global-title-color);
	font-family: var(--global-secondary-font);
	font-weight: 700;
	text-transform: uppercase;
	margin: 0px;
	padding: 0px 0px 10px 0;
}

.detail_produit .product_infos p {
	font-size: 1.4em;
	color: #969696;
	line-height: 1.2em;
	font-family: var(--global-secondary-font);
	font-weight: 300;
}

a.add_to_cart {
	margin: 30px 0;
	margin-left: auto;
	background: #F2622A;
	color: #FFF;
	padding: 10px 20px;
	font-size: 16px;
	font-weight: 700;
	border-radius: 25px;
	text-transform: uppercase;
}
a.add_to_cart:hover{
	background:#FFF;
	color: #F2622A;
	border: solid 1px #F2622A;
}

.detail_produit a.add_to_cart img {
	vertical-align: middle;
}

.product_quantity .quantity_switcher {
	background-color: #f5f5f5;
	min-width: 50px;
	padding: 5px 15px;
	max-width: 155px;
	margin: 0 auto;
} 


.detail_produit .product_quantity .quantity_switcher {
	margin-left: 25px;
}

.detail_produit .product_declinaison .quantity_switcher {
	margin: 0 auto;
}

.quantity_switcher {
	border: 1px solid transparent;
	border-radius: 25px;
	padding: 5px 15px;
	/* max-width: 80px; */
	margin: 0;
	color: #fff;
}

.quantity_switcher .compteurNum {
	min-width: 30px;
	font-size: 20px;
	text-align: center;
}

.quantity_switcher i {
	cursor: pointer;
	color: #666;
}

.compteurNum input,
.inputReduc input {
  width: 100%;
  background: #f5f5f5;
  border: none;
  color: #666;
  padding: 0px;
  height: 100%;
  text-align: center;
  font-size: 18px;
  min-width: 70px;
  text-align: center;
}

.detail_produit .product_price {
	padding-bottom: 15px;
}

.detail_produit .product_price > * {
	display: block;
	font-size: 1.8em;
	padding: 8px 0;
	font-family: var(--global-secondary-font);
	font-weight: 500;
}

.product_infos span {
	text-transform: uppercase;
}

.product_infos span:not(.compteurNum),
.product_infos strong {
	font-size: 16px;
	padding: 12px 0;
	font-weight: 600;
	display: inline-block;
	font-weight: normal;
}
.product_infos strong{
	padding: 12px;
}

#details span{
	font-size: 16px;
}

.detail_produit .product_brand{
	padding: 10px 0 5px 0;
}

.detail_produit .product_description_title {
	color: var(--global-title-color);
}

.detail_produit h2 {
	padding: 10px 0 5px 0;
}

.detail_produit .product_description {
	padding: 0 0 15px 0;
}

.detail_produit .product_declinaison{
	border-collapse: collapse;
	margin: 25px 0;
}

.detail_produit .product_declinaison th {
	min-width: 200px;
	padding: 20px 15px;
	font-weight: 400;
	text-transform: uppercase;
	background-color: #e1e1e1;
}

article.product{
	font-size: 1.3em;
	line-height: 1.4em;
}

/***************
**** PANIER ****
****************/

.panier thead th {
	background-color: #e1e1e1;
	text-align: center;
}

.panier td img {
	max-width: 64px;
}

.panier .supp i {
	color: var(--primary-color);
}

.panier .panier_recap_produits label {
	padding: 0;
}

.panier_recap_produits input[type="checkbox"] + label:before {
	margin: 0 auto;
	display: block;
	position: static;
	width: 25px;
	height: 25px;
}

.panier_recap_produits .tableStd tr td *:not(.compteurNum) {
	font-size: 14px;
	margin: 0 auto;
}

.panier_recap_produits .product_declinaison_item {
	padding-bottom: 10px;
}

.panier_recap_produits .tableStd tr td .quantity_switcher {
	margin: 0 0 0 auto;
}

.panier_recap_produits .product_declinaison label {
	text-indent: 15px;
	padding: 0;
	display: flex;
	font-weight: 400;
	margin: 0 !important;
}

.panier_product_qtt {
	min-width: 220px;
}

.payment_recap_total {
	border: 2px solid var(--primary-color);
	font-size: 1.2em;
	font-family: var(--global-secondary-font);
	font-weight: 400;
}

.payment_recap_total .info > div {
	padding: 0 0 25px 0;
}

.payment_recap_total .payment_recap_total_ttc {
	font-size: 1.1em;
}

.payment_recap_total .payment_recap_total_ttc .h1 {
	font-family: var(--global-secondary-font);
	font-weight: 600;
	display: block;
}

.payment_recap_total .info strong {
	font-weight: 400;
	color: #808080;
}

.payment_recap_total .info span {
	display: block;
	font-weight: 400;
}

.payment_recap_total .payment_recap_total_ttc strong {
	font-weight: 600;
}

#spanWaitPayement{
	font-size: 1.3em;
	font-weight: 600;
}

.payment_recap cite {
	color: #313131;
	text-align: left;
	padding: 5px 0;
	font-weight: 300;
	font-size: 11px;
}

.payment_recap .title {
	display: block;
	font-size: 22px;
	margin-bottom: 45px;
	text-transform: uppercase;
	padding-bottom: 12px;
	letter-spacing: 0;
	border-bottom: 2px solid var(--global-text-color)
}

.PQ.totLigne {
	min-width: 50px;
}

.oldPrice {
	text-decoration: line-through;
}

.panier_recap_produits strong {
	font-weight: 700;
}

.panier_adresse_livraison {
	margin: 50px; 
	border-top: 2px solid var(--primary-color);
	padding: 50px;
}

.panier_message {
	background-color: var(--global-background-color);
	min-height: 300px;
	padding: 30px;
}

.panier_message strong {
	font-size: 20px;
	font-weight: 600;
}

.panier_message p {
	color: #969696;
	font-weight: 300;
	font-family: var(--global-secondary-font);
	font-size: 15px;
}

.buttonPaiement button {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

/* Confirmation commande */
.confirmation_commande .message {
	background-color: var(--global-background-color);
	min-height: 300px;
	padding: 30px;
}

.confirmation_commande .message strong {
	font-size: 20px;
	font-weight: 600;
}

.confirmation_commande .message p {
	color: #969696;
	font-weight: 300;
	font-family: var(--global-secondary-font);
	font-size: 15px;
	padding: 5px;
}

/* STRIPE */

.saveCardElement{
	color: #eb1c26!important;
	line-height: 40px;
	font-weight: 300;
	font-style: italic;
	font-size: 1em;
	height: 40px;
	margin: 0;
	padding: 0;
	width: 100%;
}

.group {
	background-color: #F5F5F5;
	box-shadow: 0 7px 14px 0 rgba(49, 49, 93, 0.10), 0 3px 6px 0 rgba(0, 0, 0, 0.08);
	border-radius: 4px;
	padding: 25px;
}

.group hr {
	display: block;
	height: 2px;
	background-color: #e1e1e1;
	margin: 15px auto;
	border: none;
}
.component-main-form .secure {
	padding: 25px 0 0 0;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}
.formStd .secure label {
	text-transform: uppercase;
	color: #313131;
	padding-left: 10px;
	vertical-align: bottom;
	font-style: normal;
}
.formStd .secure i {
	color: #a1a1a1;
}
.blocRecharge{
	width: 85%;
	text-align: center;
	font-size: 1.5em;
	padding: 0 0 20px 0;
	margin: 0 0 30px 0;
	border-bottom: solid 1px #3AB7D6;
}
.blocRecharge h2{
	text-align: center;
	font-weight: 600;
	font-size: 1.3em;
	vertical-align: middle;
	font-family: 'Montserrat', Arial, sans-serif;
}
.blocRecharge h3{
	font-size: 1em;
}
.reserver .formStd label {
	padding-bottom: 0;
	font-size: 1.2em;
	font-weight: 400;
}
.reserver .formStd label span {
	color: #313131;
	font-weight: 400;
}
.reserver .formStd .actions {
	margin: 25px 50px;
}
.reserver .formStd .actions input:last-child,
.reserver .formStd .actions button:last-child {
	flex: 1;
	margin-left: 20px;
}

.group label span{
	margin: 0px;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 1.2em;	
}

label > span {
  text-align: right;
  margin-right: 30px;
}

label > span.brand {
  width: 30px;
  display: block;
}

.paiement label{ display: flex;}

.field {
  background: transparent;
  font-weight: 300;
  border: 0;
  color: #31325F;
  outline: none;
  flex: 1;
  padding-right: 10px;
  padding-left: 10px;
  cursor: text;
}

.field::-webkit-input-placeholder {
	color: #CFD7E0;
}
.field::-moz-placeholder {
	color: #CFD7E0;
}

.outcome {
	width: 100%;
	padding: 15px 0;
	text-align: center;
}

.success,
.error {
	display: none;
	font-size: 2em;
	font-weight: 600;
}

.success.visible,
.error.visible {
	display: inline-block;
	font-size: 2em;
	padding: 2vh 0;
	font-weight: 800;
}

.error {
	color: #E4584C;
}

.success {
	color: #666EE8;
}

.success .token {
	font-weight: 500;
	font-size: 13px;
}


/********************
**** GO TO CART ****
********************/

#goToCart {
    background: rgba(234,192,23,0.5) url('/imgs/picto/picto.shopping-bag.png') 10px center no-repeat;
    top: 50%;	
    cursor: pointer;
    display: none;
    padding: 10px 10px 10px 50px;
    position: fixed;
    left: 0%;
	color: #000;	
	z-index: 10000;
	text-align: right;
	font-size: 18px;
	-webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    filter: alpha(opacity = 0);
    opacity: 0;
}

#goToCart:hover {
	padding: 10px 50px 10px 50px;
    background: rgba(234,192,23,1) url('/imgs/picto/picto.shopping-bag.png') 5px center no-repeat;
	-webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out; 	
}


/******************
**** LIVRAISON ****
******************/

.liste_icone img {
	display: block;
	margin: 0 auto;
	padding-bottom: 10px;
}

.liste_icone strong {
	color: var(--primary-color);
	text-align: center;
	display: block;
	font-family: var(--global-secondary-font);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	font-size: 1.4em;
}


/***********************
**** GARANTIE & SAV ****
***********************/

.garantie-livraison img {
	border-radius: 50%;
}


/************
**** FAQ ****
************/

.faq .container {
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 15px;
}

.faq .container h2 {
	font-weight: 500;
}

.faq .container .global_page_title::after {
	margin: 8px 0;
}

.faq .container p {
	padding: 15px 0;
}

.accordion {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: auto;
}

.accordion .a-container {
	display: flex;
	flex-direction: column;
	width: 100%;
	padding-bottom: 25px;
}

.accordion .a-container .a-btn {
	margin: 0;
	position: relative;
	padding: 15px 30px;
	width: 100%;
	color: #fff;
	font-weight: 400;
	display: block;
	font-weight: 500;
	background-color: var(--global-title-color);
	cursor: pointer;
	transition: all 0.3s ease-in-out;
	border-radius: 5px;
	box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.15), 0 10px 10px -5px rgba(0, 0, 0, 0.1) !important;
}

.accordion .a-container .a-btn span {
	display: block;
	position: absolute;
	height: 14px;
	width: 14px;
	right: 20px;
	top: 18px;
}

.accordion .a-container .a-btn span:after {
	content: "";
	width: 14px;
	height: 3px;
	border-radius: 2px;
	background-color: #fff;
	position: absolute;
	top: 6px;
}

.accordion .a-container .a-btn span:before {
	content: "";
	width: 14px;
	height: 3px;
	border-radius: 2px;
	background-color: #fff;
	position: absolute;
	top: 6px;
	transform: rotate(90deg);
	transition: all 0.3s ease-in-out;
}

.accordion .a-container .a-panel {
	width: 100%;
	color: #262626;
	transition: all 0.2s ease-in-out;
	opacity: 0;
	height: auto;
	max-height: 0;
	overflow: hidden;
	padding: 0px 10px;
}

.accordion .a-container.active .a-btn {
	color: #fff;
}

.accordion .a-container.active .a-btn span::before {
	transform: rotate(0deg);
}

.accordion .a-container.active .a-panel {
	padding: 20px 10px 10px 10px;
	opacity: 1;
	max-height: 500px;
}


/*************
*** BOUTON ***
**************/
.btnStd{
	font-family: var(--global-secondary-font);
	font-weight: 700;
	display: table;
	margin: 20px auto;
	padding: 12px 25px;
	font-size: 16px;
	line-height: 16px;
	text-align: center;
	text-transform: uppercase;
	border: none;
	border-radius: 12px;
	letter-spacing: 1px;	
	color: #fff;	
	cursor: pointer;
	background: var(--global-title-color);
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.btnStd:hover{
	background: var(--primary-color);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.btnStd.grey{
	background-color: #E1E1E1!important;
	color: #000;
}
.btnSpe{
	display: table;
	margin: 0 auto;
	padding: 15px 20px 12px 20px;
	font-weight: 600;
	font-size: 22px;
	line-height: 22px;
	text-align: center;
	text-transform: uppercase;
    -webkit-transition: all 0.2s ease-in;
    -moz-transition: all 0.2s ease-in;
    -o-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;	
	background: none;
	cursor:pointer;			
}
.btnSpe:hover{
	background: #313131;
	color: #FFFFFF;
    -webkit-transition: all 0.5s ease-out;
    -moz-transition: all 0.5s ease-out;
    -o-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out;	
}

/**************
*** CONTACT ***
***************/

fieldset{
	border:none; 
	padding: 15px 0; 
	margin: 0;
}

.aucunesInfos{
	font-size: 30px;
	text-align: center;
	padding: 0 0 50px; 
}

p.paiement{
	padding: 50px 0;
	line-height: 16px;
}

/*Checkboxes styles*/
input[type="checkbox"] { display: none; }
input[type="checkbox"] + label {
	display: block;
	position: relative;
	padding: 0 0 0 20px;
	margin: 25px 0; 
	color: #aaa;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	font-size: 14px;
	line-height:20px;
	color: #292b2c;	
}
/*input[type="checkbox"] + label:last-child { margin-bottom: 0; }*/
input[type="checkbox"] + label:before {
  content: '';
  display: block;
  width: 18px;
  height: 18px;
  border: 1px solid var(--primary-color);
  position: absolute;
  left: 0;
  top: 0;
  opacity: .6;
  -webkit-transition: all .12s, border-color .08s;
  transition: all .12s, border-color .08s;
  margin-left: 2px;
}

input[type="checkbox"]:checked + label:before {
  width: 10px;
  top: -5px;
  left: 5px;
  border-radius: 0;
  opacity: 1;
  border-top-color: transparent;
  border-left-color: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/**** Coordonnees ***/
.contactInfo{padding: 0 10px 0 0;}
.contactInfo h4{
	font-size:14px;
	padding: 5px 0;	
	color: #292929;
	display:block;
	line-height:25px;	
	font-weight:normal;
    padding: 0 0 18px 0;		
}
.contactInfo span{
	font-size:12px;
	padding: 8px 0 8px 30px;
	display:block;	
	line-height:22px;	
	color: #292929;	
	font-weight:normal;
	
}
.contactInfo span.loc{background: url('/imgs/picto/picto.location-black.png') 0 10px no-repeat; }
.contactInfo span.phone{background: url('/imgs/picto/picto.phone-black.png') 0 10px no-repeat; }
.contactInfo span.mail{background: url('/imgs/picto/picto.mail-black.png') 0 10px no-repeat; }
.adresse3beesRes{font-size: 26px;text-align: center;}
.adresse3beesRes .one{font-size: 32px;font-weight: 600;padding: 0 0 30px 0;}
.adresse3beesRes .two{padding: 0 0 30px 0;}
.gm-style-iw {
	width: 260px !important;
	top: 15px !important;
	left: 0px !important;
	background-color: #FFFFFF;
	color: #FFF;
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
	border-radius: 20px;
	border: solid 2px #F5F5F5;
}
.gm-style .gm-style-iw{overflow: visible !important;}
#iw-container {margin-bottom: 10px;}
#iw-container .iw-title {
	font-size: 24px;
	font-weight: 400;
	padding: 10px;
	background-color: #FFFFFF;
	color: white;
	margin: 0;
	border-radius: 2px 2px 0 0;
}
#iw-container .iw-content {
	font-size: 22px;
	font-weight: 600;
	padding: 15px 5px 20px 15px;
	max-height: 140px;
	text-align: center;
	color: var(--primary-color);
}
#iw-container .iw-content span{font-size: 22px;color: #000;}
.iw-content img {display: block;margin: 0 auto;}
.iw-content hr {
  border: none;
  color: #1F1F1F;
	background: #1F1F1F;
  height: 3px;
  margin: 5px auto;
  width: 50px;
}
.iw-content span {
	font-size: 18px;
	padding: 10px 0px 0px 0px; 
	font-weight: normal;
}
.iw-content a {
	display: table;
	margin: 0 0 0 -70px;
	background: #000;
	padding: 10px 20px;
	bottom: -15px;
	left: 50%;
	position: absolute;
}
.iw-subTitle {font-size: 16px;font-weight: 700;padding: 5px 0;}
.triangle{
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 85px 32.5px 0 32.5px;
	border-color: #007bff transparent transparent transparent;
}

.contact .global_form,
.devis .global_form {
	max-width: 960px;
	margin: 0 auto;
}

.contact fieldset {
	margin: 30px 0;
}

/*.contact fieldset .pure-u-1:first-child {
	margin-left: 15px;
}

.contact fieldset .pure-u-1:last-child {
	margin-right: 15px;
}*/



/*********************************
*** INFORMATIONS COMPTE CLIENT ***
*********************************/

.client_detail_compte .global_section_title {
	font-family: var(--global-secondary-font);
	font-weight: 600;
	font-size: 18px;
}

.client_detail_compte .client_nom {
	font-size: 18px;
	font-family: var(--global-secondary-font);
	font-weight: 600;
}

.client_detail_compte .global_section_title img {
	vertical-align: middle;
	margin-right: 10px;
	width: 50px;
}

.client_detail_compte .ui-widget.ui-widget-content {
	border: none;
}

.client_detail_compte .ui-tabs .ui-tabs-nav {
	background: none;
	padding: 0;
	font-family: var(--global-main-font);
	font-size: 13px;
	border: none;
	font-weight: 400;
	margin-bottom: 25px;
	border-radius: 0;
}

.client_detail_compte .ui-tabs .ui-tabs-nav li {
	margin: 0 8px 0 0;
	background :none;
	border: none;
	padding: 8px;
	border-radius: 0;
	background-color: #e1e1e1;
}

.client_detail_compte .ui-tabs .ui-tabs-nav .ui-tabs-anchor {
	font-family: var(--global-secondary-font);
	font-weight: 400;
	text-transform: uppercase;
	text-align: center;
	padding-left: 45px;
	line-height: 25px;
}


/* TABS BACKGROUNDS */
.client_detail_compte .ui-tabs .ui-tabs-nav .ui-tabs-anchor#a-compte {
	background: url('/imgs/picto/user-noir.png') no-repeat left center / 32px;
}

.client_detail_compte .ui-tabs .ui-tabs-nav .ui-tabs-active #a-compte {
	background: url('/imgs/picto/user-blanc.png') no-repeat left center / 32px;
}

/***/

.client_detail_compte .ui-tabs .ui-tabs-nav #a-adresse-facturation {
	background: url('/imgs/picto/pin-noir.png') no-repeat left center / 32px;
}

.client_detail_compte .ui-tabs .ui-tabs-nav .ui-tabs-active #a-adresse-facturation {
	background: url('/imgs/picto/pin-blanc.png') no-repeat left center / 32px;
}

/***/

.client_detail_compte .ui-tabs .ui-tabs-nav #a-adresse-livraison {
	background: url('/imgs/picto/map-noir.png') no-repeat left center / 32px;
}

.client_detail_compte .ui-tabs .ui-tabs-nav .ui-tabs-active #a-adresse-livraison {
	background: url('/imgs/picto/map-blanc.png') no-repeat left center / 32px;
}

/***/

.client_detail_compte .ui-tabs .ui-tabs-nav #a-motdepasse {
	background: url('/imgs/picto/key-noir.png') no-repeat left center / 32px;
}

.client_detail_compte .ui-tabs .ui-tabs-nav .ui-tabs-active #a-motdepasse {
	background: url('/imgs/picto/key-blanc.png') no-repeat left center / 32px;
}

/***/

.client_detail_compte .ui-tabs .ui-tabs-nav #a-commande {
	background: url('/imgs/picto/doc-noir.png') no-repeat left center / 32px;
}

.client_detail_compte .ui-tabs .ui-tabs-nav .ui-tabs-active #a-commande {
	background: url('/imgs/picto/doc-blanc.png') no-repeat left center / 32px;
}

/***/

.client_detail_compte .ui-tabs .ui-tabs-nav li.ui-tabs-active {
	color: #fff;
	background-color: var(--primary-color);
	padding: 8px;
	margin: 0 8px 0 0;
}

.client_detail_compte .ui-state-active a, 
.client_detail_compte .ui-state-active a:link {
	background: none;
	color: var(--global-title-color) !important;
	border: none;
	-webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

.client_detail_compte .ui-tabs .ui-tabs-nav li.ui-tabs-active a {
	color: #fff !important;
}

.client_detail_compte .ui-tabs .ui-tabs-panel {
	padding: 0;
}

.client_detail_compte .ui-widget input {
	font-size: 1.3em;
}



/* - Client détails compte */
.client_code strong,
.client_code span {
	font-size: 1.5em;
	vertical-align: middle;
}

.client_code img {
	vertical-align: middle;
}

/* - Client commandes */
.client_liste_commande header img {
	margin-right: 10px;
}

.client_liste_commande header p {
	padding-top: 3px;
	font-size: 14px;
}

.client_liste_commande .tableStd {
	border: 1px solid #e1e1e1;
}

.client_liste_commande .tableStd tr th {
	background-color: var(--global-title-color);
	color: #fff;
}

.commandes_liste .product {
	margin: 10px 0;
}

.commandes_liste a {
	text-transform: uppercase;
	text-align: center;
	font-size: 14px;
	display: inline-block;
	color: #fff !important;
	vertical-align: middle;
	padding: 10px;
}

.commandes_liste .show_detail_commande {
	background-color: var(--primary-color);
}

.commandes_liste .show_bon_commande {
	background-color: var(--global-text-color);
}

/* - Client adresses */
.address_list {
	max-width: 960px;
	margin: 0 auto;
}

.address_item {
	text-align: center;
	border: 1px solid #c2c2c2;
	max-width: 400px;
	margin: 0 auto;
}

.address_item strong {
	font-weight: 400;
	color: var(--global-title-color);
	font-size: 2em;
	text-transform: uppercase;
}

.address_item strong:after {
	content: '';
	display: block;
	width: 80px;
	height: 5px;
	background-color: var(--primary-color);
	border-radius: 5px;
	margin: 15px auto;
}

.address_item .address_customer_name {
	color: #b3b2b2;
	padding: 25px 0;
	font-size: 1.5em;
	font-family: var(--global-secondary-font);
	font-weight: 700;
	display: block;
}

.address_item p {
	font-family: var(--global-secondary-font);
	font-weight: 500;
	padding: 5px 0;
	font-size: 1.5em;
}

.address_item a {
	margin-top: 45px;
	padding: 15px 60px;
}


/*************
*** PANIER ***
**************/

.tableStd{
	width: 97%;
	text-align: left;
	border-collapse: collapse;
}

.tableStd tr th{
	padding: 15px 10px;
	color:#313131;
  font-size: 12px;
	text-transform:uppercase;
	font-style: normal;
    font-weight: 400;
	white-space: nowrap;
	text-align: left;
}

.blocInfoTotal{text-align: left;}

.tableStd tr th i {
	color: var(--primary-color);
}

.tableStd tbody tr td {	
	padding: 10px;
	font-size: 14px;
    font-weight: normal;	
}

.tableStd tr:nth-child(even) {
	background-color: rgba(0, 0, 0, 0.05);
}

.tableStd tr:hover td,
.tableStd tr:nth-child(even):hover td { 
	background:rgba(241, 93, 95, 0.3);
}

.panier fieldset.w50.flol .select-style.min{width: 50%;}
.panier fieldset.w50.flol .select-style input{
	width: 100%; 
	border: none; 
	background: none; 
	display: block; 
	height: 100%;
	text-indent: 10px;
	font-size: 14px;
}
#showDate,#showMap{ display: none; }
#showMap{
	width: 100%;
	height: 350px;
}
.panier .PanPLT{padding: 45px 15px 0 30px;}
.no_product{padding: 50px 0;}
.no_product span{font-size: 20px; text-align: center; color: #000000; display: block;}
#scrollFixed span.h1{padding:30px 0 0 0;display: block;font-size:30px;}
.sticky {
	position: fixed;
	top: 65%;
	width: 30%;
	z-index: 1000;
	right: 0%;
}
.sslinfos, .paiementinfos{cursor: help;}
.dateInput{
	height: 100%;
	background-color: transparent;
	width: 100%;
	display: block;
	text-indent: 10px;
}
.table{display: table;}
.tabCell{display: table-cell;}
.tabRow{display: table-row;}

.panier .table .tabRow span{
	text-align: right; 
	padding: 10px; 
	font-weight: normal;
}
.panier .table .tabRow cite{
	text-align: right;
	font-size: 16px;
	display: block;
	width: 100%;
}
.panier .table .tabRow cite span{
	font-size: 16px;	
}

/***********
*** RGPD ***
************/

.plc{color: #000; font-size: 15px;}


/***************
*** MENTIONS ***
****************/

.mentionsCont{ width: 100%; margin: 15px auto; max-width: 1024px;}

.mentionsLeg {
	padding: 25px 0;
}

.mentionsLeg > div {
	flex-basis: 30%;
	border-bottom: 2px solid var(--primary-color);
}

.mentionsLeg h2 {
	color: #000000;
    display: block;
	font-weight: 600;
    font-size: 18px;
    text-transform: uppercase;
    font-family: var(--global-secondary-font);
	font-weight: 700;
}
.mentionsLeg h3 {
	color: #676666;
    display: block;
    font-size: 16px;
	line-height:20px;
	text-transform: uppercase;
	font-family: var(--global-secondary-font);
	font-weight: 700;
	padding-bottom: 15px;
}

.mentionsLeg p {
	flex-basis: 70%;
	padding: 0 25px;
}

/***********
 * ECRAN 13 POUCES
 */
 
@media screen and (max-width: 1366px)
{
	/* Login page */
	.login_page .content_max_width {
		max-width: 100%;
	}
}

@media screen and (max-width: 1280px)
{
	/* Qui sommes-nous */
	.qui-sommes-nous .part-2 .pure-g {
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		-ms-flex-direction: column-reverse;
		flex-direction: column-reverse;
	}

	/* Panier */
	.panier_adresse_livraison {
		margin: 0;
	}

	/* Détail produit */
	.produit .pure-u-1 {
		margin: 25px 0;
	}

	.product_tabs .pad50 {
		padding: 25px;
	}

	.liste_produits .produit img {
		width: 100%;
	}

	/* Création compte */
	.global_form .mid {
		width: 100%;
	}
	
}

@media screen and (max-width: 1144px)
{	
	.footer_assurance .pure-u-1 {
		width: 50%;
	}

	/* Sidebar left menu */
	.sidebar_left_menu li {
		margin: 15px;
	}

	.sidebar_left_menu li span {
		font-size: 1.1em;
	}

	.sidebar_left_menu li a {
		padding: 15px 15px 15px 50px;
		background-size: 25px !important;
	}

	.sidebar_left_menu .catalogue {
		margin: 15px;
	}

	.sidebar_left_menu .catalogue img {
		display: none;
	}

	.sidebar_left_menu .catalogue a {
		padding: 10px;
		font-size: 14px;
		letter-spacing: 0;
		text-align: center;
	}

	.sidebar_left_menu .link_offre {
		margin: 0;
	}
}


/***********
 * TABLETTE PAYSAGE
 */
@media screen and (max-width: 1024px)
{	
	.btnStd.disconnect span {
		display: none;
	}
	.reg_contentMenu .btnStd.disconnect img {
		margin: 0 auto;
	}
	.pad20{padding: 0px;}
	.reg_content{width: 98%;}
	.menuCell a.none{font-size: 16px;}
	.menuCell{padding: 0 15px;}
	.menuTab .menuRow .menuCell .rs{ margin: 0 5px;}
	.botCell strong{font-size:15px;}
	.contentBotLien strong{font-size:16px; }
	.panier_adresse_livraison.formContent{width: 98%; border: none;}
	.product-search-bar form .inner-form .input-select label{padding: 5px 0 0 5px !important;}
	.choices__inner{min-height: 30px !important;}
	.product-search-bar form .inner-form .input-field{height: 55px !important;}
	.blocInfoTotal .info span, #scrollFixed span.h1{font-size: 2em;}

	/* Top */
	.reg_contentMenu .search form {
		margin: 0;
	}

	/* Footer */
	.newsletter_form,
	.social_links_col {
		padding: 25px 15px;
	}

	/* Mentions légales */
	.mentionsLeg {
		flex-wrap: wrap;
	}

	.mentionsLeg h3,
	.mentionsLeg > div {
		flex-basis: 100%;
	}

	.mentionsLeg p {
		padding: 15px 0;
	}

	/* Panier */
	.panier_adresse_livraison,
	.blocInfoTotal {
		padding: 25px;
	}

	.panier_adresse_livraison input {
		width: 100%;
	}

	/* Détail sous catégorie */
	.liste_produits .pad50 {
		padding: 25px;
	}

	.detail_sous_categorie .product_infos p.product_description {
		display: none;
	}

	p.sous_categorie_description {
		padding: 0;
	}

	.liste_produits .produit a, 
	.liste_produits .produit .btnStd {
		font-size: 12px;
	}

	.detail_sous_categorie .product_infos p {
		padding: 15px 0 0 0;
		font-size: 14px;
	}

	.client_detail_compte .ui-tabs .ui-tabs-nav {
		display: flex;
		flex-wrap: wrap;
	}

	.client_detail_compte .ui-tabs .ui-tabs-nav li {
		flex: 0 1 calc( (100% - 30px) / 3);
		margin: 5px;
		box-sizing: border-box;
	}

	.client_detail_compte .ui-tabs .ui-tabs-nav li.ui-tabs-active {
		margin: 5px;
	}

	.client_detail_compte .ui-tabs .ui-tabs-nav .ui-tabs-anchor {
		width: 100%;
		box-sizing: border-box;
		text-align: left;
		letter-spacing: 0;
	}

	/* Détail sous-catégorie / liste produits */
	.detail-categorie .product_list_filter .custom_pad {
		padding: 0 10px;
	}

}

/***********
 * PETITE TABLETTE PAYSAGE
 */
 
 @media screen and (max-width: 960px)
{	
	.systeme_onglets .flex{display:block;}
	.button-presta{width: 45%; margin: 0 auto;}
	.onglet{width: 80%; margin:0 auto; border: none;}
	.menuCell{ margin: 0 0 5px 0; }
	.menuTab:nth-child(2){display: block; height: 31px; overflow:hidden; text-align: center;}
	.compteClient a{ padding: 4px 6px 4px 6px;}
	.compteClient cite{padding: 4px 6px 4px 6px;}
	a.logoTop{ padding: 0px; }

	.pad50 {
		padding: 25px;
	}

	.pad25 {
		padding: 15px;
	}

	.ptb50 {
		padding: 25px 0;
	}

	/* Responsive transition menu */
	/* Mobile menu */
	a.disconnect {
		display: none;
	}

	.deconnexion .btnStd.disconnect {
		display: block;
		border-radius: 0;
	}

	.deconnexion .btnStd.disconnect span {
		display: inline !important;
		padding-left: 15px;
	}

	.catalogue a {
		font-size: 14px !important;
		border-radius: 0;
		margin-top: 50px;
	}
	.catalogue a img {
		display: none;
	}
	.contentMenuTop{
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		padding: 10px 0;
		position: fixed;
		z-index: 1000;
		width: 300px;
		right: -305px;
		top: 0;
		box-shadow: 3px 0 0 0 #515151;
		background-color: #fff;
		height: 100vh;
		-webkit-box-shadow: -3px 0px 5px -2px rgba(0,0,0,0.3); 
		box-shadow: -3px 0px 5px -2px rgba(0,0,0,0.3);
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
		-webkit-transition: right 0.4s ease;
		-o-transition: right 0.4s ease;
		transition: right 0.4s ease;
	}
	.contentMenuTop li {
		margin: 0 0 45px 0;
		font-size: 1.5em;
	}
	.menuTab.bloc2 {
		margin-top: 100px;
		list-style-type: none;
	}
	.mobile_menu_button.open + .contentMenuTop { 
		right: 0;
		-webkit-transform: translate(100, 0);
		-ms-transform: translate(100, 0);
		transform: translate(100, 0);
	}
	.mobile_menu_button {
	  display: table;
	  margin-left: auto;
	  cursor: pointer;
	  position: relative;
	  z-index: 1100;
	}
	.bar1, .bar2, .bar3 {
	  width: 35px;
	  height: 5px;
	  background-color: #350d42;
	  margin: 6px 0;
	  -webkit-transition: 0.4s;
	  -o-transition: 0.4s;
	  transition: 0.4s;
	}
	.mobile_menu_button.open .bar1 {
	  -webkit-transform: rotate(-45deg) translate(-7px, 6px);
	  -ms-transform: rotate(-45deg) translate(-7px, 6px);
	  transform: rotate(-45deg) translate(-7px, 6px);
	}
	.mobile_menu_button.open .bar2 {opacity: 0;}
	.mobile_menu_button.open .bar3 {
	  -webkit-transform: rotate(45deg) translate(-9px, -9px);
	  -ms-transform: rotate(45deg) translate(-9px, -9px);
	  transform: rotate(45deg) translate(-9px, -9px);
	}
	.mobile_menu_button.open + .contentMenuTop .subnav-content.open {
		padding: 10px;
		display: flex;
		flex-wrap: wrap;
		background: none;
		position: static;
	}

	.mobile_options {
		display: list-item;
	}

	.mobile_options > * {
		margin-bottom: 15px;
	}

	/***/

	.logoTop img {
		padding: 15px;
	}

	.sidebar_left_menu {
		display: none;
	}

	.menuTab {
		margin: 0 0 0 auto;
		width: auto;
	}

	.miniBar,
	.main_right_content {
		width: 100%;
	}

	/* Burger menu */
	.mobile_menu.is-hidden {
		display: block;
	}
	
	.page,
	.page__content {
	  position: relative;
	}

	.page__content {
	  /*min-height: 100vh;*/
	  background-color: #fff;
	}

	/*****/

}


/***********
 * TABLETTE PORTRAIT
 */
 
 @media screen and (max-width: 768px)
{	
	.pad20{padding: 0px;}
	.systeme_onglets .flex{display:block;}
	.button-presta{width: 45%; margin: 0 auto;}
	.onglet{width: 80%; margin:0 auto; border: none;}
	.contentBotLien cite{font-size:10px;}
	.contentMenuTop .menuTab .menuRow .menuCell{padding: 0;}
	.reg_topDroite.flor{width: 40%}
	.reg_topGauche.flol{width: 60%}
	.contentMenuTop .menuTab .menuRow .menuCell a.none{padding: 5px 0;}
	.logoTop img{width: 100%; padding-top: 15px; margin: 0;}
	a.logoTop{max-width: 150px;}
	.panier .info i{font-size: 30px;}
	.buttonPaiement img{max-width: 80px !important;}
	.tableStd tr th{padding: 15px 5px;}

	.nav {
		width: 60vw;
	}

	.top-horaire p {
		font-size: 14px;
	}

	.reg_contentMenu .btnStd.disconnect span {
		display: none;
	}

	.user_name em {
		display: block;
	}

	/* Footer */
	footer .pure-u-1 {
		padding: 25px 0;
	}
	.contentBotLien {
		display: block;
		text-align: center;
	}
	.contentBotLien strong {
		margin: 0 auto 15px auto;
	}
	.part3 {
		padding: 15px;
	}

	.client_detail_compte .ui-tabs .ui-tabs-nav li {
		flex: 0 1 calc( (100% - 30px) / 2);
		margin: 5px;
		font-size: 11px;
		box-sizing: border-box;
	}

	/* Client profil - Commandes */
	.product_list_header {
		display: none;
	}

	.product_list .product span {
		font-size: 1.35em;
	}

	.product_list [class^="pure-u-"] {
		margin-top: 10px;
	}

	.product_accordion .tab-label::after { 
		margin-left: 25px;
	}

	.product_accordion .tab-content {
		height: 100%;
		max-height: inherit;
	}

	.product_quantity .quantity_switcher {
		margin: 0 auto;
	}

	.product_accordion_item {
		padding: 25px;
	}

	.add_to_cart img {
		width: 50px;
	}

	input[type="checkbox"] + label.tab-label {
		text-align: center;
		margin: 10px 0;
		position: static;
		display: table;
		font-size: 16px;
	}

	.product_cta a {
		margin: 0 auto;
		display: table;
	}

	.product_list .product span.title {
		display: block;
		text-align: center;
		font-weight: 600;
		padding-bottom: 5px;
	}

	.product_list .product span:not(.title) {
		font-style: italic;
		font-weight: 300;
		padding-bottom: 15px;
	}

	.product_list .product:after {
		content: '';
		height: 3px;
		width: 100%;
		background-color: #e1e1e1;
		margin: 50px 0;
		display: block;
	}

	.product_list .product:nth-child(odd) {
		background: none;
	}

	.menuTab.bloc2 {
		width: 100%;
	}

}

@media screen and (max-width: 667px)
{
	.pad20{padding: 0px;}
	.systeme_onglets .flex{display:block;}
	.button-presta{width: 45%; margin: 0 auto;}
	.onglet{width: 80%; margin:0 auto; border: none;}

	.formContent .formPad{padding: 0 0 0 30px;}
	.contact_info .blocPhone,
	.contact_info .blocRs{float: none; width: 100%; padding: 10px 0;}
	.contact_info{padding: 15px 0;}
	.abonnement .width25:nth-child(1){width: 100%; float: none;}
	.abonnement .width25:nth-child(2),
	.abonnement .width25:nth-child(3),
	.abonnement .width25:nth-child(4){width: 33.33333%;}
	.abonnement img.img.boxImg{max-width: 250px;}
	.abonnement .top{padding: 0 0 15px 0;}
	.blocContentFrom .width60{width: 70% !important;}
	.blocContentFrom .width40{width: 30% !important;}
	#user-login span{ font-size: 11px; }
	.lswal2-content input{margin-top: 0;}
	.swal2-content cite{font-size: 0.8em;}
	.swal2-content label{text-align: left; display: table; padding-left: 2px; font-size: 0.8em;}
	.login-page{box-shadow: none;}	
}


/***********
 * PETITE TABLETTE PORTRAIT
 */
 
@media screen and (max-width: 600px)
{
	.pad20{padding: 0px;}
	.systeme_onglets .flex{display:block;}
	.button-presta{width: 45%; margin: 0 auto;}
	.onglet{width: 80%; margin:0 auto; border: none;}

	.blocContent .blocPosition .blocPadPosition {padding: 58px 10px;}
	.blocContent .blocPosition h5 {font-size: 14px;}
	.bgParalax p{font-size: 11px; line-height: 19px;}
	.lesOffres span.contentOffre strong {font-size: 13px;}
	.lesOffres span.contentOffre cite { font-size: 13px;}
	input.std,textarea.std{font-size:12px;}
	.blocCoord.flol,.blocMap.flor{float:none;}
	.blocCoord { width: 38%; padding: 0 0 30px 0; margin: 0 auto;}
	.contactInfo { padding: 0;}
	.blocMap { width: 100%;}
	.blocContent .blocPosition{width:97%;}
	.bgParalax .widthBlocPara {  width: 98%;}
	.slideBot h4 { font-size: 15px;}
	.select-style select{ font-size: 12px; }
	.btnSearch.spec,.select-style.w25{ float: none; width: 100%; }
	#formSearch input.spe{ width: 87.5%; }
	.blocContent .blocPosition.flol{ float: none; }
	.blocPositionPad{ padding: 20px; }
	.borderTopLeft, .borderBotRight{display: none;} 
	.contentBotLien{padding: 5px;}
	.part3{padding: 10px;}
	.wide-container .width50{width: 100%;}
	.reg_mid.plateauxDuMois .width33{width: 100%;}
	.reg_mid.plateauxDuMois .width33{padding: 25px 0;}
	.accueil .blocPicto img{width: 100%; max-width: 100px;}
	.accueil .blocPicto p{text-align: center;}
	.reg_content.panier .width33{width: 100%; float: none;}
	.tableStd tr th,
	.tableStd tr th i{font-size: 14px;}
	.no_product{padding: 20px 0;}
	.no_product span{font-size: 16px;}
	.PQ{font-size: 16px !important;}
	.blocInfoTotal .info span{font-size: 25px;}
	#scrollFixed span.h1{font-size: 25px;}
	.contact iframe{height: 250px !important; border: 0 !important;}
	.le-concept .btnSpec{float: none;}
	.blocFromage .width20.flol.dib,
	.blocBox .width25.flol,
	.contact .width60.mar0auto,
	.ImgPRD.width50.flol{width: 100%!important; float: none; }
	.reg_content{ padding: 25px 0; }
	.sliderAccueil .padT50{ padding: 0px; }
	.ImgPRD .Pad{ padding: 10px; }
	.ImgPRD .btnSpecE.flor.addpanier,
	.ImgPRD .padT30 .flol{ float: none; }
	.ImgPRD .padT30 .flol{ text-align: center; padding: 0 0 15px 0; }
	.btnSpecE.flor.addpanier{ margin: 0 auto; display: table; }
	.detail-produit .w50.mar0auto{ width: 90%; margin: 20px auto 0 auto; }
	.padding50{ padding: 25px; }
	.blocTitreAccueil .h2{ font-size: 14px; line-height: 20px; }
	.padT50, .panier .reg_content{ padding: 25px 0 0 0; }
	.panier .tableStd tr td img{ display: none; }
	hr{ margin: 15px auto; }
}


@media screen and (max-width: 568px)
{
	.contact .w50{width: 100%; float: none;}
	.blocContentFrom{min-height: 0;}
	.systeme_onglets .flex{display:block;}
	.button-presta{width: 50%; margin: 0 auto;}
	.onglet{width: 80%; margin:0 auto; border: none;}
	.pad20{padding: 0px;}

	/* Top */
	.top-horaire {
		display: none;
	}

	/* Accueil */
	.brands_list > .flex {
		justify-content: center;
	}

	.our_brands .global_page_title {
		text-align: center;
	}

	.our_brands .sep.min.global_page_title:after {
		margin: 10px auto;
	}

	.home_presentation img {
		width: 300px;
	}

	.home_presentation img + img {
		width: 150px;
	}

	/* Détail sous-catégorie - Liste produit */
	.produit_tri_select {
		display: table;
		margin: 25px auto;
	}

	.liste_produits .produit a {
		margin: 0 auto;
	}

	.liste_produits .produit a, .liste_produits .produit .btnStd {
		display: block;
		font-size: 16px;
	}

	.detail_sous_categorie .product_price {
		padding: 0 0 10px 0;
	}

	.detail_sous_categorie .product_price > * {
		font-size: 1.5em;
	}

	.produit .pure-u-1 {
		margin: 0;
	}

	.detail_sous_categorie .product_infos p.product_description {
		display: block;
	}

	/* Footer */
	.global_form.newsletter_form > div {
		padding: 15px 0;
		flex-wrap: wrap;
	}

	footer .newsletter legend {
		text-align: center;
	}

	.global_form.newsletter_form > div input,
	.global_form.newsletter_form > div button {
		margin: 15px auto;
	}

	/* FAQ */
	.accordion .a-container .a-btn {
		font-size: 15px;
	}

	/* Détail produit */
	.product_tabs .ui-tabs .ui-tabs-nav li {
		width: calc(50% - 10px);
		margin: 5px;
		font-size: 14px;
	}

	.product_tabs .ui-tabs .ui-tabs-nav .ui-tabs-anchor {
		width: 100%;
		text-align: center;
	}

	.product_tabs .ui-tabs .ui-tabs-nav li.ui-tabs-active {
		margin-bottom: 5px;
		padding-bottom: 0;
	}

	.client_detail_compte .ui-tabs .ui-tabs-nav li {
		flex: 0 1 100%;
		margin: 5px;
		font-size: 11px;
		box-sizing: border-box;
	}

	.btnStd {
		margin: 0 auto !important;
		font-size: 18px !important;
		padding: 15px 35px !important;
	}

	.login_page form {
		padding: 0;
	}

	.product_list .product span {
		font-size: 1em;
	}

	.reg_contentMenu {
		flex-wrap: wrap;
	}

	.reg_topGauche, .search_bar {
		flex: 1 1 50%;
	}

	.reg_topDroite .pad15 {
		display: flex;
		flex-direction: row-reverse;
		justify-content: space-between;
	}

	.mobile_menu_button {
		margin: 0;
		align-self: center;
	}

	.reg_contentMenu .btnStd.panier {
		display: inline-block;
		margin-right: 10px !important;
	}

	.reg_contentMenu > .reg_topGauche,
	.reg_contentMenu > .search_bar {
		display: none;
	}

	.panier_recap_produits {
		overflow-x: scroll;
	}	

	.panier_recap_produits > .pad25 {
		padding: 0;
	}

	.blocInfoTotal .info span {
		font-size: 18px;
	}

	.payment_recap .title {
		margin-bottom: 15px;
	}
}

/***********
 * MOBILE PAYSAGE
 */
 
 @media screen and (max-width: 480px)
{		
	.contentBotLien cite{font-size: 12px;}
	.reg_mid.blocPicto .width33{width: 100%;}
	#scrollFixed .width70,
	#scrollFixed .width30{width: 100%; float: none;}
	.panier_adresse_livraison.formContent .flol,
	.panier_adresse_livraison.formContent .flor{float: none;}
	.panier_adresse_livraison.formContent .padField{padding: 10px 0;}
	.panier_adresse_livraison.formContent .w50{width: 50%; float: left;}
	.resp.total{display: block; width: 100%;}
	.resp.total .blocInfoTotal{display: table; float: right;}
	#scrollFixed .flol.width30.prel{display: none;}
	.panier .padT50{padding-top: 0;}
	.tableStd .width30,
	.tableStd .width70{width: 100%;}
	.tableStd tr td img{max-width: 80px;}
	.panier .PanPLT{padding: 5px 0;}
	.tableStd .pad10.desc .width50:nth-child(1){width: 50px; margin: 0 30px 0 0; }
	.tableStd .pad10.desc .width50:nth-child(2){width: 30%;}
	.panier .nbprod{ font-size: 30px; }
	.PanPLT{font-size: 13px;}
	.PQ{font-size: 13px !important;}

	.reg_topGauche {
		display: none;
	}

	.reg_topGauche span {
		display: none;
	}

	.btnStd {
		font-size: 14px;
	}

	.global_form textarea {
		min-height: 180px;
	}

	/* Détail produit */
	#avis input {
		width: 100%;
	}

	.footer_assurance strong {
		font-size: 1em;
	}

}

/***********
 * MOBILE PORTRAIT
 */
 
@media screen and (max-width: 380px)
{
	.pad20{padding: 0px;}
	.systeme_onglets .flex{display:block;}
	.button-presta{width: 80%; margin: 0 auto;}

	.detailOffre{ width: 100%; }
	.detailOffre .padOffre{ padding: 10px; }
	.detailOffre .contactOffre{ width: 100%; }
	.detailOffre .contentOffre span.contact{ background: none; padding: 10px; font-size: 11px; }
	.reg_topDroite.flor{float:none;}
	.reg_topDroite{display:table; margin:0 auto;}
	.contentMenuTop .menuTab .menuRow .menuCell a.none{text-align:center;}	
	.formContent .width50.flol{float:none;}
	.formContent .width50{width:100%;}
	.formContent .flol .padField,
	.formContent .flor .padField{ padding: 15px 0;}
	.blocCoord { width: 95%;}
	.slideBot h4 { font-size: 13px;}
	.blocContent.flol{float:none;}
	.blocContent { width: 100%; margin: 5px 0;}
	.bgParalax h3 {font-size: 12px;}
	.bgParalax.goupeIncompliance, .bgParalax.slideBot { padding: 30px 0;}
	.detailOffre .contentOffre{padding:10px;}
	.blocSeo h4{font-size: 11px;}
	.blocSeo h3 {font-size: 15px;}.blocEntreprise2 .blocContent .blocPosition h5 { font-size: 15px;}
	.blocEntreprise1 .blocContent .blocPosition p { line-height: 15px;padding: 14px;}
	.blocEntreprise1 .blocContent .blocPosition h5 {font-size: 14px;padding: 15px 18px 15px;}
	.contentBotLien cite{line-height: 11px; padding: 3px 0;}
	.contentBotLien cite.loc,.contentBotLien cite.phone,.contentBotLien cite.mail{background:none;}
	.plateauxDuMois .width25{width: 100%;}
	.le-concept .reg_mid.blocPicto .width33{width: 100%;}
	.le-concept .reg_mid.blocPicto .width33 img{width: 25%;}
	.bgIntro h2{font-size: 18px;}
	.accueil .reg_content{padding: 0;}
	.reg_contentPad.bgIntro{padding: 0 0 30px 0;}
	.h1spe{font-size: 28px;}
	.blocTitreAccueil .h1{font-size: 19px;}
	.bgIntro h1{font-size: 23px;}
	.vinEtFromage.respDiv .imgRepas, .vinEtFromage.respDiv .imgRepas2{height: 200px !important;}
	.PanPLT{font-size: 12px;}
	.tableStd tr td img{max-width: 60px;}
	.le-concept .wide-container{height: 200px;}
	.le-concept .reg_content{padding: 0;}
	.le-concept .blocPicto p{font-size: 22px;}
	.blocBox .btnSpecE{margin: 0 auto; display: table;}	
	.blocImgButton .width50{width: 100%; float: none;}
	.blocImgButton .width50 .btnSpecE{margin: 0 auto; display: table;}
	.blocContent .blocPosition{width: 100%;}
	.situation .FR .btnSpecE{float: none;}
	.situation .padding{padding: 10px 0;}
	.abonnement .width25{width: 100% !important; float: none;}
	.blocFromage{padding: 50px 5px;}
	.blocTitreAccueil .h1, .blocTitreAccueil .h2{font-size: 16px; font-weight:600;}
	.bgIntro h2, .bgIntroh2{font-size: 18px;}
	.tableStd tr th, .tableStd tr th i{font-size:12px;}
}

/* ========================================
   CATEGORIES & PRODUCT LIST STYLES
   ======================================== */

.category-card {
	padding: 20px;
	background: #f5f5f5;
	border-radius: 8px;
	text-align: center;
	text-decoration: none;
	color: #333;
	transition: all 0.3s;
	display: block;
}

.category-card:hover, .subcategory-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

.subcategory-card {
	padding: 15px;
	background: #f5f5f5;
	border-radius: 6px;
	text-align: center;
	text-decoration: none;
	color: #333;
	transition: all 0.3s;
	display: block;
}

.subcategory-card.active {
	background: #f2622a !important;
	color: #fff !important;
	font-weight: bold;
}

.subcategory-card.active:hover {
	background: #d9551f !important;
}

.product_list_header {
	background: #E1E1E1;
	border-radius: 8px 8px 0 0;
	padding: 10px 0;
	font-weight: bold;
	color: #333;
}

.product {
	background: #fff;
	border: 1px solid #E1E1E1;
	border-radius: 6px;
	margin-bottom: 10px;
	transition: all 0.3s;
	cursor: pointer;
}

.product:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.product_image img {
	max-height: 250px;
	width: auto;
}

.categories-grid {
	display: grid;
	gap: 15px;
	margin: 20px 0;
}

.categories-grid.cat1 {
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
}

.categories-grid.cat2 {
	grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
	gap: 10px;
}

/* ========================================
   PRODUCT DETAIL PAGE STYLES
   ======================================== */

.breadcrumb {
	margin: 0 0 20px 0;
	padding: 10px 15px;
	background: #f5f5f5;
	border-radius: 6px;
	font-size: 16px;	
}

.detail_produit .product_card {
	background: #fff;
	border: 1px solid #E1E1E1;
	border-radius: 8px;
	padding: 30px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.detail_produit .product_image {
	background: #fff;
	border: 1px solid #E1E1E1;
	border-radius: 8px;
	padding: 20px;
	text-align: center;
	margin-bottom: 20px;
	margin-right: 20px;
}

.detail_produit .product_image img {
	max-height: 500px;
	width: auto;
	display: block;
	margin: 0 auto;
}

.detail_produit h1 {
	color: #333;
	font-size: 28px;
	margin: 0 0 20px 0;
}

.detail_produit .product_price_ht {
	background: #f2622a;
	color: #fff;
	padding: 10px 20px;
	border-radius: 6px;
	font-size: 24px;
	font-weight: bold;
	margin-left: auto;
}

.detail_produit .product_info_section {
	background: #f5f5f5;
	padding: 20px;
	border-radius: 6px;
	margin: 20px 0;
}

.detail_produit .product_info_section h2 {
	color: #333;
	font-size: 18px;
	margin: 0 0 10px 0;
	border-bottom: 2px solid #f2622a;
	padding-bottom: 8px;
}

.detail_produit .product_reference {
	padding: 8px 0;
	border-bottom: 1px solid #ddd;
}

.detail_produit .product_reference:last-child {
	border-bottom: none;
}

.detail_produit .add_to_cart {
	background: #f2622a;
	color: #fff;
	padding: 12px 30px;
	border-radius: 6px;
	text-decoration: none;
	display: inline-block;
	margin-top: 15px;
	font-weight: bold;
	transition: all 0.3s;
}

.detail_produit .add_to_cart:hover {
	background: #d9551f;
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(242,98,42,0.3);
}

/* ========================================
   LISTE FOURNISSEURS PAGE STYLES
   ======================================== */

.liste_fournisseur {
	background: #f5f5f5;
	min-height: 100vh;
}

.liste_fournisseur .fournisseur_container {
	margin: 0 auto;
}

.liste_fournisseur .page_header {
	padding: 0 0 30px 0;
}

.liste_fournisseur .page_header_content {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 20px;
}

.liste_fournisseur .page_header_icon {
	background: #fff;
	width: 70px;
	height: 70px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 2px 8px rgba(0,0,0,0.08);
	flex-shrink: 0;
}

.liste_fournisseur .page_header_icon img {
	width: 35px;
	height: 35px;
}

.liste_fournisseur .page_header_text {
	text-align: left;
}

.liste_fournisseur .page_header h1 {
	color: #333;
	font-size: 28px;
	margin: 0 0 5px 0;
	font-weight: 700;
}

.liste_fournisseur .page_subtitle {
	color: #666;
	font-size: 16px;
	margin: 0;
}

.fournisseur_grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: 25px;
	padding-bottom: 50px;
}

.fournisseur_card {
	background: #fff;
	border-radius: 12px;
	overflow: hidden;
	transition: all 0.3s ease;
	box-shadow: 0 2px 8px rgba(0,0,0,0.08);
	border: 1px solid #E1E1E1;
}

.fournisseur_card:hover {
	transform: translateY(-8px);
	box-shadow: 0 8px 24px rgba(0,0,0,0.15);
	border-color: var(--primary-color);
}

.fournisseur_link {
	display: block;
	text-decoration: none;
	color: inherit;
}

.fournisseur_image_container {
	background: #fff;
	padding: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 180px;
	border-bottom: 1px solid #f5f5f5;
}

.fournisseur_image {
	max-width: 100%;
	max-height: 120px;
	width: auto;
	height: auto;
	object-fit: contain;
	transition: all 0.3s ease;
}

.fournisseur_card:hover .fournisseur_image {
	transform: scale(1.05);
}

.fournisseur_info {
	padding: 25px 20px;
	text-align: center;
	background: #f5f5f5;
	transition: all 0.3s ease;
}

.fournisseur_card:hover .fournisseur_info {
	background: var(--primary-color);
}

.fournisseur_name {
	color: #333;
	font-size: 20px;
	font-weight: 700;
	margin: 0 0 15px 0;
	transition: all 0.3s ease;
}

.fournisseur_card:hover .fournisseur_name {
	color: #fff;
}

.fournisseur_cta {
	color: var(--primary-color);
	font-size: 14px;
	font-weight: 600;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	transition: all 0.3s ease;
}

.fournisseur_card:hover .fournisseur_cta {
	color: #fff;
}

.fournisseur_cta i {
	transition: all 0.3s ease;
	font-size: 12px;
}

.fournisseur_card:hover .fournisseur_cta i {
	transform: translateX(5px);
}

/* Responsive */
@media (max-width: 768px) {
	.fournisseur_grid {
		grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
		gap: 15px;
	}

	.liste_fournisseur .page_header_content {
		gap: 15px;
	}

	.liste_fournisseur .page_header_icon {
		width: 60px;
		height: 60px;
	}

	.liste_fournisseur .page_header_icon img {
		width: 30px;
		height: 30px;
	}

	.liste_fournisseur .page_header h1 {
		font-size: 24px;
	}

	.liste_fournisseur .page_subtitle {
		font-size: 14px;
	}

	.fournisseur_image_container {
		min-height: 140px;
		padding: 20px;
	}

	.fournisseur_image {
		max-height: 100px;
	}
}

/* ========================================
   PANIER / CART PAGE STYLES
   ======================================== */

.panier {
	background: #f5f5f5;
}

/* Header de la page panier uniquement */
.panier .page_header {
	background: #fff;
	padding: 30px 50px;
	margin-bottom: 30px;
	border-bottom: 2px solid #E1E1E1;
}

.panier .page_header_image {
	width: 50px;
	height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 15px;
}

.panier .page_header_image img {
	width: 35px;
	height: 35px;
}

.panier .global_page_title {
	font-size: 28px;
	color: #333;
	font-weight: 700;
	margin: 0;
}

/* Table panier */
.panier .tableStd {
	background: #fff;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 2px 12px rgba(0,0,0,0.08);
}

.panier .tableStd thead {
	background: #f2622a;
	color: #fff;
}

.panier .tableStd thead th {
	padding: 18px 15px;
	font-weight: 600;
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	border: none;
}

.panier .tableStd tbody tr {
	border-bottom: 1px solid #E1E1E1;
	transition: background 0.3s ease;
}

.panier .tableStd tbody tr:last-child {
	border-bottom: none;
}

.panier .tableStd tbody tr:hover {
	background: #f9f9f9;
}

.panier .tableStd tbody td {
	padding: 20px 15px;
	vertical-align: middle;
}

.panier .tableStd tbody td img {
	max-width: 80px;
	max-height: 80px;
	border-radius: 8px;
	border: 1px solid #E1E1E1;
}

/* Quantity switcher dans le panier */
.panier .quantity_switcher {
	display: inline-flex;
	align-items: center;
	background: #f5f5f5;
	border-radius: 8px;
	padding: 5px;
	gap: 10px;
}

.panier .quantity_switcher i {
	cursor: pointer;
	color: #666;
	font-size: 14px;
	padding: 8px 12px;
	transition: all 0.3s ease;
	border-radius: 6px;
}

.panier .quantity_switcher i:hover {
	background: #e1e1e1;
	color: #f2622a;
}

.panier .quantity_switcher input {
	width: 50px;
	text-align: center;
	border: none;
	background: #fff;
	border-radius: 6px;
	padding: 8px 5px;
	font-weight: 600;
	color: #333;
}

.panier .inputReduc input {
	width: 60px;
	text-align: center;
	border: 2px solid #E1E1E1;
	border-radius: 6px;
	padding: 8px 5px;
	font-weight: 600;
	color: #333;
	transition: border-color 0.3s ease;
}

.panier .inputReduc input:focus {
	outline: none;
	border-color: #f2622a;
}

/* Bouton supprimer */
.panier .supp {
	display: inline-block;
	padding: 8px;
	border-radius: 6px;
	transition: all 0.3s ease;
}

.panier .supp:hover {
	background: #ffebee;
}

.panier .supp img {
	width: 20px;
	height: 20px;
	opacity: 0.6;
	transition: opacity 0.3s ease;
}

.panier .supp:hover img {
	opacity: 1;
}

/* Message section */
.panier .panier_message {
	background: #fff;
	padding: 30px;
	border-radius: 12px;
	box-shadow: 0 2px 12px rgba(0,0,0,0.08);
}

.panier .panier_message strong {
	font-size: 18px;
	font-weight: 600;
	color: #333;
	display: block;
	margin-bottom: 15px;
}

.panier .panier_message textarea {
	width: 100%;
	min-height: 120px;
	padding: 15px;
	border: 2px solid #E1E1E1;
	border-radius: 8px;
	font-size: 14px;
	resize: vertical;
	transition: border-color 0.3s ease;
}

.panier .panier_message textarea:focus {
	outline: none;
	border-color: #f2622a;
	box-shadow: 0 0 0 3px rgba(242,98,42,0.1);
}

/* Récap prix */
.panier .payment_recap {
	position: sticky;
	top: 20px;
}

.panier .payment_recap_total {
	background: #fff;
	border-radius: 12px;
	padding: 30px;
	box-shadow: 0 2px 12px rgba(0,0,0,0.08);
	border: 2px solid #E1E1E1;
}

.panier .payment_recap_total .title {
	font-size: 22px;
	font-weight: 700;
	color: #333;
	margin-bottom: 25px;
	padding-bottom: 15px;
	border-bottom: 2px solid #E1E1E1;
}

.panier .payment_recap_total .info > div,
.panier .blocInfoTotal .info > div {
	padding: 12px 10px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.panier .payment_recap_total .info span,
.panier .blocInfoTotal .info span {
	font-size: 15px;
	color: #666;
}

.panier .payment_recap_total .info strong,
.panier .blocInfoTotal .info strong {
	font-size: 16px;
	font-weight: 600;
	color: #333;
}

.panier .payment_recap_total_ttc {
	background: #f5f5f5;
	padding: 15px;
	border-radius: 0 0 12px 12px;
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
}

.panier .payment_recap_total_ttc span {
	font-size: 18px;
	font-weight: 700;
	color: #333;
}

.panier .payment_recap_total_ttc strong {
	font-size: 24px;
	font-weight: 700;
	color: #f2622a;
}

.panier .buttonPaiement {
	margin-top: 25px;
}

.panier .buttonPaiement button {
	width: 100%;
	background: #f2622a;
	color: #fff;
	border: none;
	padding: 16px 24px;
	border-radius: 8px;
	font-size: 16px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}

.panier .buttonPaiement button:hover {
	background: #d9551f;
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(242,98,42,0.35);
}

.panier .buttonPaiement button img {
	width: 22px;
	height: 22px;
	filter: brightness(0) invert(1);
}

.panier .payment_recap cite {
	display: block;
	margin-top: 15px;
	font-size: 12px;
	color: #999;
	font-style: italic;
	line-height: 1.5;
}

/* No product message */
.panier .no_product {
	text-align: center;
	padding: 60px 20px;
}

.panier .no_product span {
	font-size: 18px;
	color: #999;
	font-weight: 500;
}

/* Responsive */
@media (max-width: 1200px) {
	.panier .tableStd thead th {
		font-size: 12px;
		padding: 12px 8px;
	}

	.panier .tableStd tbody td {
		padding: 15px 8px;
		font-size: 14px;
	}
}

@media (max-width: 768px) {
	.panier .page_header {
		padding: 20px;
	}

	.panier .global_page_title {
		font-size: 22px;
	}

	.panier .panier_message {
		padding: 20px;
	}

	.panier .payment_recap_total {
		padding: 20px;
	}

	.panier .payment_recap {
		position: static;
	}
}

/***************************
 * Product Cards - Detail Fournisseur
 ***************************/
.product_card_container {
	/* Pas de padding ici pour ne pas affecter la largeur calculée par Pure CSS */
}

.product_card {
	background: #fff;
	border: 1px solid #e0e0e0;
	border-radius: 8px;
	padding: 12px;
	margin: 3px;
	margin-bottom: 25px;
	height: calc(100% - 56px); /* 100% - (margin-top + margin-bottom + 2*margin) */
	display: flex;
	flex-direction: column;
}

.product_card_link {
	text-decoration: none;
	color: inherit;
	flex: 1;
	display: flex;
	flex-direction: column;
}

.product_card_image {
	text-align: center;
	margin-bottom: 8px;
}

.product_card_image img {
	max-width: 100%;
	height: 130px;
	object-fit: contain;
}

.product_card_reference {
	text-align: center;
	margin-bottom: 6px;
}

.product_card_reference span {
	color: #999;
	font-size: 11px;
}

.product_card_designation {
	text-align: center;
	margin-bottom: 8px;
	flex: 1;
}

.product_card_designation strong {
	font-size: 13px;
	display: block;
	line-height: 1.3;
}

.product_card_prix {
	text-align: center;
	margin-bottom: 10px;
}

.product_card_prix strong {
	font-size: 18px;
	color: #333;
}

.product_card_prix span {
	font-size: 11px;
	color: #666;
}

.product_card_quantity {
	margin-bottom: 8px;
	text-align: center;
}

/* Même style que le panier pour le quantity_switcher */
.product_card_quantity .quantity_switcher {
	display: inline-flex;
	align-items: center;
	background: #f5f5f5;
	border-radius: 8px;
	padding: 5px;
	gap: 10px;
	justify-content: center !important; /* Surcharge le "sb" (space-between) */
	width: auto;
	max-width: 155px;
}

.product_card_quantity .quantity_switcher i {
	cursor: pointer;
	color: #666;
	font-size: 14px;
	padding: 8px 12px;
	transition: all 0.3s ease;
	border-radius: 6px;
	flex-shrink: 0; /* Empêche les icônes de rétrécir */
}

.product_card_quantity .quantity_switcher i:hover {
	background: #e1e1e1;
	color: #f2622a;
}

.product_card_quantity .quantity_switcher .compteurNum {
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.product_card_quantity .quantity_switcher input {
	width: 50px;
	text-align: center;
	border: none;
	background: #fff;
	border-radius: 6px;
	padding: 8px 5px;
	font-weight: 600;
	color: #333;
}

.product_card_cta {

}

.product_card_cta .add_to_cart {
	display: block;
	padding: 10px;
	text-align: center;
	font-size: 13px;
}