/***** banner *****/
.banner                          						{ position: relative; padding-top: 10vw;}
.banner .video                     						{ position: relative; padding: 0 40px;}
.banner:after 									        { position: absolute; right: 0; bottom: 0; top:-220px; background: #111; width: 50%; height: 100%; transition: none; z-index: -20; /*transform: skewX(-30deg);*/ content: "";}
/* .banner .video video                     				{ width: 100%; height: auto; max-height: 720px; object-fit: cover; object-position: 50%; display: block; filter: brightness(1); max-width: 1800px; margin: 0 auto} */
.banner .video video                     				{ width: 100%; height: auto; max-height: 640px; object-fit: cover; object-position: 50%; display: block; filter: brightness(1); max-width: 1600px; margin: 0 auto; padding: 0 5vw;}
.banner .content                 						{ position: relative; padding-bottom: clamp(20px, 2vw, 40px); z-index: 10;}
.banner .titre_cap 	            						{ display: block; margin: 5px 0 0 0;}
.banner .link 	            							{ margin: 10px 0 0 0;}
.banner .wrapper_large            						{ z-index: 10;}

@media (max-width:1400px) {
}
@media (max-width:1200px) {
.banner                          						{ padding-top: 150px;}
.banner .video                     						{ padding: 0 20px;}
.banner .video:before 									{ bottom: -10px; height: 20px;}
}
@media (max-width:1000px) {
.banner .content                 						{ padding: 3vw 0;}     
}
@media (max-width:700px) {
.banner                          						{ padding-top: 120px;}
.banner .video:before 									{ bottom: -7px; height: 14px; width: 50%; right: 12%;}
.banner .video video                     				{ padding: 0; margin: 0 -5vw; width: 100vw;}
}

.chapo  { margin: 140px auto; width: 90vw; max-width: 1024px; text-align: center; font: 600 clamp(16px, 2.6vw, 22px)/140% "Inter"; letter-spacing: 0.6px;}

@media (max-width:1200px) {
.chapo  { margin: 100px auto;}    
}

@media (max-width:1000px) {
.chapo  { margin: 80px auto;}    
}

@media (max-width:800px) {
.chapo  { margin: 60px auto;}    
}

@media (max-width:400px) {
.chapo  { margin: 40px auto;}    
}

/***** centrale *****/
@media (max-width:1000px) {
.bloc_txt_img.centrale .container  						{ grid-gap: clamp(45px, 12vw, 70px);}
.bloc_txt_img.centrale .container>.item:first-child 	{ grid-area: 2;}
.bloc_txt_img.centrale .container>.item:last-child 		{ grid-area: 1;}

.bloc_txt_img.intro .item.img                         { display: none;}
}


/***** produits *****/
@media (max-width:1000px) {
.bloc_txt_img.produits .container .img 					{ display: none;}
}



/***** services *****/
.services .titre_main 									{ font-size: clamp(40px, 8vw, 150px); line-height: 100%; margin: -15px 0 -30px -5vw; text-transform: uppercase; letter-spacing: 0.8px; color:var(--mainColor2)}
.services .item .link_text_arrow 						{ margin-top: 15px; display: block;}
.services .item.cursor img              				{ transition: all 300ms ease-in-out;}

.services .item.cursor                                  { cursor: pointer; position: relative;}
.services .hover_show                                   { opacity: 0; transition: opacity 300ms ease-in-out; position: absolute; top: calc(50% - 30px); transform: translateY(-50%); padding: 20px 40px; font-size: 14px;}

@media (min-width:1201px) {
.services:before										{ left: 60%; right: 0; bottom: 100px; top: -80px; border-radius: clamp(15px, 3.5vw, 30px) 0 0 clamp(15px, 3.5vw, 30px); visibility: visible;}
.services .item.cursor:hover img              			{ transform: scale(0.95); filter: brightness(0.25);}
.services .item.cursor:hover a .link_text_arrow         { color: var(--mainColor1);}
.services .item.cursor:hover .hover_show                { opacity: 1; transition: opacity 300ms ease-in-out;}
}
@media (max-width:1200px) {
.services .titre_main 									{ margin: -15px 0 20px 0;}
}
@media (max-width:700px) {
.services .item .link_text_arrow 						{ margin-top: 10px; display: inline-block;}
}


/***** moving img *****/
.moving_img .titre_main 								{ opacity: 10%; font-size: clamp(40px, 8vw, 150px); line-height: 100%; margin: -15px 0 -30px 0; text-transform: uppercase; letter-spacing: 0.8px; text-align: right; padding: 0 5vw;}

@media (max-width:1200px) {
.moving_img .titre_main 								{ margin: -15px 0 20px 0;}
}


/***** a propos *****/
.about .atouts 											{ background: var(--bgColorDark); text-align: center; padding: clamp(20px, 10vw, 100px) clamp(20px, 3vw, 40px); color: #fff; border-radius: var(--imgRadius);}
/*.about .atouts:after 									{ position: absolute; left: 15%; bottom: -12px; background: var(--mainColor1); width: 40%; height: 24px; transition: none; z-index: -50; content: "";}*/
.about .atouts   										{ display: grid; align-items: center;}
.about .atouts ul li									{ font-size: clamp(14px, 2.4vw, 18px); line-height: 140%; font-weight: 500; letter-spacing: 0.4px; margin-top: 45px; position: relative;}
.about .atouts ul li:after								{ width: 50px; height: 3px; position: absolute; right: 0; left: 0; margin: 0 auto; top: -24px; background: var(--mainColor1); content: "";}
.about .atouts ul li:first-child						{ margin-top: 0;}
.about .atouts ul li:first-child:after					{ display: none;}

@media (max-width:1200px) {
.about .atouts:before 									{ bottom: -10px; height: 20px;}
}
@media (max-width:700px) {
.about .atouts:before 									{ bottom: -7px; height: 14px;}
}



/* div p a													{ color: var(--mainColor1); font-weight: 600;}
div p a:after											{ width: 13px; height: 13px; background: url("../images/arrow_sup.svg") 100% 0 no-repeat; display: inline-block; margin: 0 1px -3px 0; content: "";} */

/* @media (min-width:1201px) {
div p a:hover											{ filter: brightness(1.5);}
} */



/***** assets v1 *****/
.assets_v1 									{ text-align: center; position: relative; padding: 0; margin:var(--marginTB);}
.assets_v1 .container 						{ display: grid; grid-gap: 20px; position: relative; margin-top: 30px}
.assets_v1.col_3 .container 				{ grid-template-columns: repeat(3, 1fr);}
.assets_v1.col_4 .container 				{ grid-template-columns: repeat(4, 1fr);}
.assets_v1.col_5 .container 				{ grid-template-columns: repeat(5, 1fr);}
.assets_v1.col_6 .container 				{ grid-template-columns: repeat(6, 1fr);}
.assets_v1 .item  a						    { display: block; margin: 0; font-size: 0; line-height: 0;}
.assets_v1 .item .icon 						{ border-radius: 0; background-color: var(--bgColorDark); display: block; margin: 0 auto;}
.assets_v1 .item .icon img					{ width:140px; height: 140px;  filter: brightness(0) invert(1);}
.assets_v1 .item .icon a img              	{ transition: all 300ms ease-in-out;}
.assets_v1 .item .icon a:hover				{ background-color: var(--bgColorLight); display: block;}
.assets_v1 .item .icon a:hover img          { filter: brightness(1) invert(0);}

.assets_v1 .partenaire { display: flex; justify-content: center; flex-wrap: wrap;}


@media (max-width: 700px){
.assets_v1.col_3 .container,
.assets_v1.col_4 .container,
.assets_v1.col_5 .container,
.assets_v1.col_6 .container					{ grid-template-columns: repeat(2, 1fr);}
}



/***** bloc reviews *****/
.bloc_reviews 											{ position: relative; overflow: hidden;}
.bloc_reviews .list   									{ position: relative;}

.card_review 											{ background: var(--bgColorDark); position: relative; padding: clamp(20px, 3vw, 35px) clamp(20px, 3vw, 35px); color: var(--bgColorLight); letter-spacing: 0.4px; border-radius: var(--imgRadius)}
.card_review p											{ line-height: 170%; margin: 0;}
.card_review p.author									{ line-height: 20px; font-weight: 600;}
.card_review .note   									{ width: 100px; display: grid; grid-template-columns: repeat(5, 1fr); grid-gap: 5px; margin: 12px 0;}
.card_review .note svg 									{ width: 100%; height: auto; display: block; fill: #ffb504;}


@media (max-width: 1200px){
.card_review p											{ font-size: 13px;}    
}

/* if note global */
.bloc_reviews .note_global								{ display: grid; grid-template-columns: auto 92px auto 1fr; align-items: end; grid-gap: 20px; margin-bottom: 35px;}
.bloc_reviews .note_global img							{ width: 100%; height: auto; display: block; margin-bottom: -4px; filter: invert(1);}
.bloc_reviews .note_global .number						{ font-size: 40px; line-height: 40px; font-weight: 600;}
.bloc_reviews .note_global .all_link		 			{ padding-left: 10px; margin-bottom: -5px;}
.bloc_reviews .note_global .all_link a		 			{ display: inline-block;}


/* if slider */
.slider_reviews   										{ margin-right: -30px;}
.slider_reviews .slick-slide 							{ margin-right: 30px; min-height: 300px;}
.slider_reviews_nav 									{ position: absolute; right: -12px; top: -75px;}
.slider_reviews_nav .slick-arrow						{ width: 40px;}


@media (max-width: 1000px){
.slider_reviews .slick-slide 							{ margin-right: 20px; }
}

@media (max-width: 1400px){
.bloc_reviews 												{ margin: 100px auto;}
}
@media (max-width: 1200px){
.bloc_reviews 												{ margin: 80px auto;}
.bloc_reviews .nav_slider 									{ top: -65px;}
.bloc_reviews .note_global									{ margin-bottom: 25px;}
.bloc_reviews .item 										{ padding: 25px; min-height: inherit; margin-right: 15px;}
}
@media (max-width: 700px){
.bloc_reviews 												{ margin: 50px auto 40px auto;}
.bloc_reviews ::-webkit-scrollbar 							{ display: none;}
.bloc_reviews .note_global									{ grid-template-columns: auto auto 80px 1fr; grid-gap: 0 10px; margin-bottom: 20px;}
.bloc_reviews .note_global .number							{ font-size: 30px; line-height: 32px;}
.bloc_reviews .note_global .stars 							{ width: 90px; margin-right: 4px;}
.bloc_reviews .note_global .all_link		 				{ padding: 5px 0 0 0; grid-column: span 4;}
.bloc_reviews .note_global .all_link a		 				{ line-height: 22px;}
.bloc_reviews .slider 										{ width: 100vw; overflow-x: auto; gap: 10px; display: flex; flex-wrap: nowrap; justify-content: start; align-items: start; padding: 0 6vw; margin: 0 -6vw;}
.bloc_reviews .item 										{ min-width: 300px; padding: 20px; margin: 0;}
.bloc_reviews .item p										{ font-size: 12px; line-height: 24px;}
.bloc_reviews .item p.author								{ font-size: 16px; line-height: 20px;}
.bloc_reviews .item .note   								{ width: 70px; margin: 10px 0;}
}
@media (max-width: 400px){
.bloc_reviews .item 										{ min-width: 75vw;}
}













