/***** banner : texte + photos *****/
.banner 								{ position: relative; overflow: hidden; padding: 140px 0 40px 0;}	
.banner:before 							{ position: absolute; left: 60%; right :0; bottom: 0; top:0; background:var(--mainColor2); z-index: -1; transition: none; content: ""; border-radius:0;}
.banner .container						{ display: grid; grid-template-columns: 1fr 60%; grid-gap: 80px; align-items: center;}
.banner .img   							{ position: relative; z-index: 5;}
.banner .img picture 					{ position: relative; display: block;}
.banner .img img  						{ width: 100%; max-height: 700px; height: auto; object-fit: cover; position: relative; display: block; border-radius: var(--allImgBR); aspect-ratio: 3/2;}
.banner .txt 							{ position: relative; text-align: right;}

.banner .txt .wrap li                   { position: relative; padding-left: 35px; line-height: 35px; margin: 10px 0; font-size: 20px;}
.banner .txt .wrap  					{ max-width: none; text-align: left;}
.banner .txt .wrap>:first-child			{ margin-bottom: 5px;}
.banner .txt .wrap .titre_main  		{ display: none;}
.banner .txt .wrap .titre_main span	    { color:var(--mainColor2);}
.banner .txt .wrap .titre_main:before  	{ display: none;}
.banner .txt .wrap .sous_titre  		{ font-size:40px; line-height: 48px}


.banner .slider   						{ width: 100vw; border-radius: var(--imgRadius); overflow: hidden; max-height: 700px;}
.banner .slider .slick-slide			{ width: 55vw; max-width: 1050px; margin-right: 20px;}
.banner .slider_nav   					{ position: absolute; left:0; bottom: 0; z-index: 10; display: grid; grid-template-columns: 1fr 1fr;}

@media (max-width:1366px) {
.banner .container						{ grid-gap: 60px;}
.banner .txt .wrap .sous_titre          { font-size: 35px; line-height: 44px;}
}

@media (max-width:1200px) {
.banner 								{ padding-top: 150ox; padding-bottom: 0;}
.banner .txt .wrap .titre_main  		{ display: block; text-transform: uppercase; font-weight: 800; margin: 0; padding: 0; font-size: 50px}
.banner:before							{ left: 0; right: 0; bottom:50%}
.banner .container						{ grid-gap: 40px; grid-template-columns: 1fr;}
.banner .img   							{ grid-area: 1;}
.banner .slider_nav   					{ right: auto; left: calc(90vw - 65px); bottom: -80px;}
.banner .txt 							{ width: 90vw;}
.banner .txt .wrap .sous_titre  		{ font-size:30px}
}

@media (max-width:1000px) {
.banner 								{ padding-top: 100px; padding-bottom: 50px;}
.banner .container						{ grid-gap: 50px;}
.banner .img img  						{ border-radius: 0;}
.banner .txt .wrap   					{ text-align: left;}

.banner .slider   						{ margin-left: -5vw;}
.banner .slider .slick-slide			{ width: 100vw; margin-right: 0;}
.banner .slider_nav   					{ display: none;}
}
@media (max-width:700px) {
.banner 								{ background: var(--bgColorDark)}
.banner .container						{ grid-gap: 30px; }
.banner:before							{ display: none}
.banner .txt .wrap  					{ color:#fff}
.banner .txt .wrap h1  					{ color:#fff}

.banner .txt .wrap a  					{ width:100%;}
.banner .txt .wrap .titre_main  		{ font-size: 30px; color:#fff}
.banner .txt .wrap .sous_titre  		{ margin:10px 0; font-size: 20px; line-height: 28px}
.banner .txt .wrap li                   { font-size: 16px;}
.banner .txt .wrap ul                   { margin: 20px 0 0 0 }

}

/* custom 2 img */
.banner .img.two .img_2 				{ position: absolute; left: 100%; top: 0; bottom: 0; margin-left: 20px;}
.banner .img.two .img_2 img				{ width: auto; height: 100%;}

@media (max-width:1400px) {
.banner .img.two .img_2 				{ display: none;}
}
@media (max-width:1200px) {
.banner .img.two .img_1 img				{ aspect-ratio: 3/2;}
}
@media (max-width:1000px) {
.banner .img.two .img_1 				{ margin: 0 -5vw;}
.banner .img.two .img_1 img				{ aspect-ratio: 3/2; border-radius: 0;}
}




/***** quote : txt + img *****/
.quote_txt_img 											{ position: relative; padding: 120px 0 0 0; margin: 0;}
.quote_txt_img .container	                        	{ align-items: center; position: relative; text-align: center; background:var(--bgColorLight); padding: 60px 80px}
.quote_txt_img .container .item							{ position: relative;}
.quote_txt_img .container p               				{ margin-bottom: clamp(10px, 2vw, 15px);}
.quote_txt_img .container .sous_titre			        { position: relative;}
.quote_txt_img .container .sous_titre:before			{ position: absolute; left: 50%; top: 100%; margin-top: 8px; width: 50px; height: 3px; background: var(--mainColor2); content: ""; transform: translate(-50%,50%)}


@media (max-width:1200px) { 

}
@media (max-width:1000px) { 
.quote_txt_img                        					{display: none}
}


/***** card item : img + txt */

.card_item_v1								{ background: #fff; overflow: hidden; position: relative; text-align: left}
.card_item_v1 .wrap							{ padding: 40px}
.card_item_v1 img 							{ display: block; margin: 0; width: 50px; height: 50px}
.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: 20px 0 10px 0;}
.card_item_v1 p								{ margin: 20px 0;}
.card_item_v1 .link.fullw 					{ width: 100%; padding: 0;}
.card_item_v1 .link							{ width: 100%; text-align: center;}


@media (max-width:1200px) {
.card_item_v1 .wrap							{ padding: 30px;}
}
@media (max-width:700px) {
.card_item_v1 .wrap							{ padding: 30px;}

}

/***** grid bloc */
.grid_bloc	 								{ position: relative;}
.grid_bloc:before	 						{ position: absolute; width: 100%; right :0; bottom: -60px; top:40%; background:var(--bgColorDark); z-index: -1; transition: none; content: ""; border-radius:0;}
.grid_bloc .container						{ display: grid;  grid-template-columns: repeat(3, 1fr); grid-gap: 30px; text-align: center;}
.grid_bloc .titre_main	 					{ margin-bottom: 60px;}
.grid_bloc .sous_titre					    { margin: 0 0 20px 0}
.grid_bloc .sous_titre:before				{ position: absolute; left: 0; top: 100%; margin-top: 8px; width: 50px; height: 3px; background: var(--mainColor2); content: "";}


@media (max-width:1200px) {
.grid_bloc .container						{ grid-gap: 20px;}
.grid_bloc	 						        { background:var(--bgColorDark); padding: 40px 0; margin: 40px 0}
.grid_bloc:before	 						{ display: none}
.grid_bloc .titre_main	 					{ color: #fff}

}

@media (max-width:1000px) {
.grid_bloc .container					    { grid-template-columns: 1fr;}
}

@media (max-width:700px) {
.grid_bloc .sous_titre					    { font-size: 20px; line-height: 28px; margin: 20px 0 10px 0}
.grid_bloc .container						{ text-align: left;}
.grid_bloc .titre_main	 					{ font-size: 30px; line-height: 38px; margin-bottom: 20px;}
.grid_bloc:before	 						{ display: none}

}



/***** beton *****/
.beton 								        { position: relative; color: #fff; text-align: center}
.beton .container	                        { display: grid; grid-template-columns: 50% 1fr; align-items: center; position: relative; background: var(--bgColorDark); }
.beton .container .item						{ position: relative;}
.beton .container .item.txt				    { padding: 0 60px;}
.beton .container img 						{ width: 100%; height: 100%; object-fit: cover; display: block; position: relative; z-index: 10;}
.beton .container .link 					{ display: block; margin-top: 20px}
.beton .container .sous_titre 				{ color:#fff}
.beton .container .sous_titre:before		{ position: absolute; left: 50%; top: 100%; margin-top: 8px; width: 50px; height: 3px; background: var(--mainColor2); content: ""; transform: translate(-50%,50%)}

@media (max-width:1200px) {
.beton .container p 						{ display: none;}
.beton .container .sous_titre:before		{ display: none;}
.beton .container .item.txt				    { padding: 0 40px;}
.beton .container .sous_titre 				{ font-size: 20px; line-height: 28px;}
}

@media (max-width:700px) {
.beton .container					        { grid-template-columns: 1fr;}
.beton .container .item.txt				    { padding: 20px 40px 40px 40px;}
}




/***** moving img *****/
.moving_img									{ position: relative; overflow: hidden; margin: var(--marginTB); padding: 20px 0;}
.moving_img .row 							{ width: auto; display: flex;}
.moving_img .row .grid 						{ width: auto; display: flex; animation: moving_img 80s linear infinite;}
.moving_img .row .grid div 					{ padding: 0 10px;}
.moving_img .row .grid img 					{ width: auto; height: 640px; display: block; object-fit: cover; transition: all 300ms ease-in-out;}
.moving_img .link							{ display: block; margin: 50px auto; width: fit-content; }

@keyframes moving_img {
0%											{ transform: translate(0, 0);}
100% 										{ transform: translate(-100%, 0);}
}

@media (max-width:1600px) {
.moving_img .row .grid div 					{ padding: 0 15px;}
.moving_img .row .grid img 					{ height: 420px;}
}
@media (max-width:1400px) {
.moving_img .row .grid img 					{ height: 400px;}
}
@media (max-width:1200px) {
.moving_img									{ margin-top: 40px;}
.moving_img .row .grid div 					{ padding: 0 10px;}
.moving_img .row .grid img 					{ height: 380px;}
}
@media (max-width:1000px) {
.moving_img									{ margin-top: 0;}
.moving_img .row .grid img 					{ height: 350px;}
}
@media (max-width:700px) {
.moving_img .row .grid div 					{ padding: 0 7px;}
.moving_img .row .grid img 					{ height: 60vw; max-height: 350px;}
	
}


/***** assets v1 *****/
.assets_v1 									{ text-align: center; position: relative; padding: clamp(20px, 8vw, 80px) 0 0 0;}
.assets_v1 .container 						{ display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 20px; position: relative;}
.assets_v1 .item  						    { padding: 40px; background: var(--bgColorLight);}
.assets_v1 .item p 						    { margin-top: 10px}
.assets_v1 .item img 						{ display: block; margin: 0 auto;}
.assets_v1 .item .sous_titre 				{ font: 400 20px/24px "Outfit"; text-transform: uppercase; font-weight: 800}
.assets_v1 .item .sous_titre span			{ display: block; text-transform: none; font-weight: 400}


@media (max-width: 1000px){
.assets_v1 									{ padding: 0;}    
.assets_v1 .container					    { grid-template-columns: repeat(1, 1fr);}
}

@media (max-width: 700px){
.assets_v1 .item  						    { padding: 20px;}
.assets_v1 .item img 						{ width:80px;}
.assets_v1 .item .sous_titre 				{ margin: 0; font-size:18px; }


}

