/***** top page *****/
.top_page 										{ position: relative; padding-top: 160px;}
.top_page:before 								{ position: absolute; top: 120px; right: 3vw; left: 50vw; bottom: 0; background: var(--bgColorLight); z-index: -1; visibility: hidden; border-radius: 0; content: "";}

.top_page .content 								{ padding: clamp(30px, 8vw, 60px) 0 0 0; display: grid; text-align: center;}
.top_page .content :last-child					{ margin-bottom: 0;}


@media (max-width:1200px) {
.top_page 										{ padding-top: 120px;}
}
@media (max-width:700px) { 
.top_page 										{ padding-top: 0;}
}





/***** breadcrumb *****/
.breadcrumb										{ margin: 0; line-height: 0; position: relative;}
.breadcrumb li 									{ display: inline-block; font-size: 12px; line-height: 20px; margin: 0 15px; letter-spacing: 0.6px; position: relative;}
.breadcrumb li:after							{ width: 1px; height: 9px; position: absolute; right: -18px; top: 6px; background: var(--mainColor1); content: "";}
.breadcrumb li:last-child:after 				{ display: none;}
.breadcrumb li a.active 						{ color: var(--mainColor1);}

@media (min-width:1201px) {
.breadcrumb a:hover                 			{ color: var(--mainColor1);}
}
@media (max-width:700px) { 
.breadcrumb										{ display: none;}
}



/***** text : simple *****/
.txt_simple 									{ position: relative; text-align: center; margin: var(--marginTB);}
.txt_simple.align_left							{ text-align: left;}
.txt_simple:before								{ position: absolute; width: 94vw; max-width: calc(47vw + 720px); left: auto; right: 3vw; top: 0; bottom: 0; background: #eee; border-radius: 50px; visibility: hidden; transition: none; content: "";}
.txt_simple svg									{ width: 60px; height: auto; display: block; margin: 0 auto 15px auto;}
.txt_simple :last-child               			{ margin-bottom: 0;}
.txt_simple .link								{ margin-top: 10px;}
.txt_simple .multi_links						{ display: grid; grid-template-columns: 1fr 1fr; max-width: 300px; grid-gap: 10px; margin: 25px 0 0 0;}
.txt_simple .multi_links .link					{ margin: 0; text-align: center; padding: 0;}

/* custom highlight */
.txt_simple .txt_highlight    					{ padding-bottom: 15px;}
.txt_simple .txt_highlight svg  				{ bottom: 0; left: 0; right: 0; margin: 0 auto;}
.txt_simple .txt_highlight svg path				{ fill: var(--mainColor1);}









/***** card item : img + txt *****/
.card_item_v3								{ position: relative; overflow: hidden;}
.card_item_v3 .wrap							{ position: relative;}
.card_item_v3 img 							{ display: block; margin: 0 auto;}
.card_item_v3 img:not(.icon)				{ width: 100%; height: auto; aspect-ratio: 5/3; object-fit: cover; border-radius: var(--imgRadius); margin-bottom: 20px;}
.card_item_v3 .sous_titre 					{ margin: 0 0 10px 0;}
.card_item_v3 p								{ margin: 10px 0 0 0;}
.card_item_v3 p	a							{ z-index: 25;}
.card_item_v3 .link_arrow 					{ position: absolute; right: 0; top: 0; z-index: 20; width: 30px; height: 30px; background-position: -5px 50%;}
.card_item_v3 .link_arrow:after				{ width: 50vw; height: 100vh; position: absolute; right: 0; bottom: -50vh; content: "";}

.card_item_v3 .multi_links					{ display: grid; grid-template-columns: 1fr 1fr; grid-gap: 10px; margin-top: 25px;}
.card_item_v3 .multi_links .link			{ margin: 0; text-align: center; padding: 0;}

@media (max-width:700px) {
.card_item_v3 .link_arrow 					{ width: 28px; height: 28px;}
.card_item_v3 .multi_links					{ grid-template-columns: 1fr 1fr; grid-gap: 10px; margin-top: 20px;}
}



/***** grid bloc *****/
.grid_bloc	 								{ position: relative; margin: var(--marginTB);}
.grid_bloc:before							{ width: auto; height: auto; position: absolute; left: 0; right: 0; top: 0; bottom: 0; background: var(--bgColorLight); visibility: hidden; transition: none; z-index: -1; content: "";}
.grid_bloc .container						{ display: grid; grid-gap: clamp(10px, 5vw, 20px); margin-top: clamp(15px, 3vw, 25px);}
.grid_bloc .container img      				{ display: block; width: 100%; height: auto;}

@media (max-width:1200px) {
.grid_bloc:before							{ left: 0; right: 0; top: 0; bottom: 0; border-radius: 0;}
}


/* custom colums */
.grid_bloc.col_2 .container					{ grid-template-columns: repeat(2, 1fr);}
.grid_bloc.col_3 .container					{ grid-template-columns: repeat(3, 1fr);}
.grid_bloc.col_4 .container					{ grid-template-columns: repeat(4, 1fr);}

@media (max-width:1200px) {
.grid_bloc.col_4 .container					{ grid-template-columns: 1fr 1fr;}
.grid_bloc.col_3 .container					{ grid-template-columns: 1fr 1fr;}
}
@media (max-width:700px) {
.grid_bloc.col_2 .container,	
.grid_bloc.col_3 .container,					
.grid_bloc.col_4 .container					{ grid-template-columns: 1fr;}
}


/* swipe mobile */ 
@media (max-width:700px) {
.swipe_mobile .container 								{ display: flex; gap: 10px; width: 100vw; margin-left: -5vw; overflow-x: auto; padding: 0 5vw;}
.swipe_mobile .container::-webkit-scrollbar 			{ display: none;}
.swipe_mobile .container .item 							{ min-width: clamp(280px, 75vw, 360px);}
}



/***** card item : img + txt */
.card_item_v1								{ background: var(--bgColorLight); overflow: hidden; position: relative;}
.card_item_v1 .number     					{ line-height: 50px; height: 50px; width: 50px; font-size: 18px; font-weight: 500; display: grid; align-items: center; justify-items: center; background-color: var(--mainColor1); position: absolute; top: 0; left: 0; }
.card_item_v1 .wrap							{ padding: 60px;}
.card_item_v1 img 							{ display: inline-block;}
.card_item_v1 img:not(.icon)				{ width: 100%; height: auto; aspect-ratio: 5/3; object-fit: cover; margin-bottom: -15px;}
.card_item_v1 .sous_titre 					{ margin: 10px 0 10px 0; font-size: 22px; line-height: 30px;}
.card_item_v1 p								{ margin-bottom: 20px;}
.card_item_v1 .link.fullw 					{ width: 100%; padding: 0; text-align: center;}

@media (max-width:1200px) {
.card_item_v1								{ box-shadow: none;}
.card_item_v1 .wrap							{ padding: 50px;}
.card_item_v1 .sous_titre 					{ font-size: 20px;}
.card_item_v1 .number     					{ line-height: 40px; height: 40px; width: 40px; font-size: 17px; }
}
@media (max-width:700px) {
.card_item_v1 .wrap							{ padding: 40px 40px ;}
.card_item_v1 .sous_titre 					{ font-size: 16px; line-height: 22px;}
}



#produits .grid_bloc .container     		{ gap: clamp(30px, 4vw, 60px) clamp(10px, 3vw, 30px) ;}
#produits .card_item_v1 img:not(.icon)		{ aspect-ratio: inherit; margin-bottom: 0;}
#produits .card_item_v1              		{ background-color: #fff; }
#produits .card_item_v1 a             		{ display: flex; flex-direction: column; flex-wrap: nowrap; justify-content: space-between; height: 100%;}
#produits .card_item_v1 .txt         		{ position: relative; padding: 30px 30px 20px 30px; border-top: 1px solid var(--bgColorLight);}
#produits .card_item_v1 .txt .sous_titre	{ font-size: 24px; letter-spacing: 1px; font-weight: 700; color: var(--mainColor1); margin: 0; }
#produits .card_item_v1 .txt .titre     	{ font-size: 18px; color: #000;}
#produits .card_item_v1 .txt .ref          	{ top: 30px; right: 30px; font-size: 12px; color: #000;}


#produits_details .prix                     { background-color: var(--mainColor1); margin-bottom: 20px; padding: 10px 30px; display: grid; grid-template-columns: 1fr 1fr; align-items: center; justify-items: center; gap: 20px; }
#produits .prix    		                    { background-color: var(--mainColor1); padding: 10px 30px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; justify-items: center; gap: 20px; margin-bottom: -1px; }
#produits_details .prix .line,
#produits .prix .line		                { width: 2px; height: 100%; background: var(--bgColorLight); }
#produits_details .prix>*,
#produits .prix>*    		                { font-size: 20px; }
#produits_details .prix .new_price,
#produits .prix .new_price                  { font-size: 28px; font-weight: 600; /*display: block;*/ }
#produits_details .prix .promo,
#produits .prix .promo                      { position: relative; display: inline-block;}
#produits_details .prix .promo:after,
#produits .prix .promo:after	            { position: absolute; width: 100%; height: 4px; left: 0; right: 0; top: 50%; background: var(--mainColor2); transform: rotate(-25deg); content: ""; }

#produits .item_card_v1 a                   { height: 100%; }

#produits_details .bloc_txt_img .item.img   { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }                           
#produits_details .bloc_txt_img .item.img .gd_img  { grid-column: span 4; }                           




#actionmois .grid_bloc .item                { position: relative; background-color: #fff;}
#actionmois .grid_bloc .item .texte         { padding: 30px 30px 20px 30px; color: #000;}
#actionmois .grid_bloc .item .texte p       { color: #000;}
#actionmois .grid_bloc .item .date          { position: absolute; top: 20px; right: 0; background-color: var(--mainColor1); padding: 0 15px; }






/***** bloc reviews *****/
.bloc_timeline 											{ position: relative; overflow: hidden; margin: var(--marginTB); color: var(--bgColorDark); letter-spacing: 0.4px;}
.bloc_timeline .list   									{ position: relative;}
.bloc_timeline .sous_titre								{ margin-bottom: clamp(20px, 3vw, 30px);}

.card_timeline 											{ background: #fff; position: relative; padding: 30px; border-radius: var(--imgRadius); min-height: 250px;}
.card_timeline p											{ font-size: clamp(13px, 2.1vw, 14px); line-height: 160%; font-weight: 500; margin: 0;}
.card_timeline p.author									{ font-size: clamp(16px, 2.4vw, 18px); line-height: 120%; font-weight: 600; margin-bottom: 20px;}
.card_timeline .note   									{ width: 100px; display: grid; grid-template-columns: repeat(5, 1fr); grid-gap: 5px; margin: 12px 0;}
.card_timeline .note svg 									{ width: 100%; height: auto; display: block; fill: var(--mainColor1);}

/* if slider */
.slider_timeline .slick-list 							{ overflow: visible; margin-right: -20px;}
.slider_timeline .slick-slide 							{ margin-right: 20px;}
.slider_timeline_nav 									{ position: absolute; right: -12px; top: -70px;}
.slider_timeline_nav .slick-arrow						{ background-color: transparent; width: 40px;}

@media (max-width: 1200px){
.bloc_timeline .titre_hw   								{ margin-bottom: 20px;}
}
@media (max-width: 700px){
.bloc_timeline 											{ margin-top: 0;}
.bloc_timeline .titre_hw   								{ margin-bottom: 15px;}
.card_timeline 											{ padding: 20px;}
.card_timeline .note   									{ width: 90px; grid-gap: 5px; margin: 10px 0;}
.slider_timeline_nav 									{ top: -50px;}
}

.bloc_timeline ::-webkit-scrollbar 						{ background-color: #eee;}
.slider_timeline:not(.slick-slider) 					{ display: flex; gap: clamp(10px, 3vw, 30px); align-items: start; width: 100vw; max-width: calc(1200px + 5vw); margin: 0 0 0 -5vw; overflow-x: auto; padding: 0 5vw clamp(20px, 7vw, 60px) 5vw;}
.slider_timeline:not(.slick-slider):before 				{ width: 50vw; height: 8px; background: var(--bgColorDark); position: absolute; left: -50vw; bottom: 0; content: "";}
.slider_timeline:not(.slick-slider):after 				{ width: 50vw; height: 8px; background: var(--bgColorDark); position: absolute; right: -50vw; bottom: 0; content: "";}
.slider_timeline:not(.slick-slider) .card_timeline 		{ min-width: clamp(280px, 80vw, 380px); margin-right: 0;}


@media (max-width: 1200px){
.bloc_timeline ::-webkit-scrollbar 						{ height: 4px;}
.slider_timeline:not(.slick-slider):before 				{ height: 4px;}
.slider_timeline:not(.slick-slider):after 				{ height: 4px;}
}




