/***** banner : fullscreen *****/
.banner                             { position: relative;}
.banner:after 						{ position: absolute; left: 0;right: 0; top: 0; bottom:50%; background: #fff; transition: none; z-index: -1; content: "";}
.banner .img                     	{ display: grid; grid-template-columns: 1fr 1fr 1fr; grid-gap: clamp(5px, 3vw, 20px); padding-top: 180px; margin: 0 auto;}
.banner .img img                    { width: 100%; display: block; object-fit: cover;}
.banner h1             		        { color: var(--mainColor2); margin: 30px auto; text-align: center; margin: 10px 20px 20px 20px; line-height: 1.2}
.banner h1 span           		    { color: var(--mainColor1);}
.banner .content                 	{ position: relative; margin: 80px auto; width: auto; text-align: left; z-index: 10; max-width: 1000px;}
.banner .content img                { display: block; margin: -50px 0 20px 0}
.banner a  							{ color: var(--mainColor1); text-decoration: underline;}

@media (max-width:1200px) {
.banner img                         { height: 50vh;}
.banner:after 						{ display: none;}
.banner .content img                { margin: 0 0 20px 0; height: auto}
}


@media (max-width:800px) {
.banner .img                     	{ grid-template-columns: 1fr 1fr; padding-top: 80px}
.banner .img_1, .banner .img_2      { height: 50vh;}
.banner .img_3                      { display: none;}
.banner .content                 	{ position: relative; margin: 220px auto 0 auto;}
.banner .content img                { display: none;}

}

@media (max-width:600px) {
.banner .img                     	{ grid-template-columns: 1fr;}
.banner .img_1, .banner .img_3      { display: none;}
.banner .content                 	{ margin-top: 160px;}
.banner h1             		        { font-size: 25px}


}



/***** grid bloc mixed *****/
.grid_bloc_mixed 							{ position: relative; margin: var(--marginTB);}
.grid_bloc_mixed .container					{ display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 0 50px; margin: -25px 0; text-align: center;}
.grid_bloc_mixed .item 						{ margin: 25px 0; grid-row-end: span 2;}
.grid_bloc_mixed .item:nth-child(1)			{ grid-column-start: 2; grid-row-start: 1;}
.grid_bloc_mixed .item:nth-child(2)			{ grid-column-start: 1; grid-row-start: 2;}
.grid_bloc_mixed .item:nth-child(3)			{ grid-column-start: 3; grid-row-start: 2;}
.grid_bloc_mixed .titre_main                { font-size: clamp(80px, 15vw, 320px); line-height: 100%; margin: -80px 0 -5% 0; color: var(--mainColor1); opacity: 10%; text-align: left;}


@media (max-width:1200px) {
.grid_bloc_mixed:before						{ left: 0; right: 0; border-radius: 0;}
.grid_bloc_mixed .container					{ grid-template-columns: 1fr 1fr; grid-gap: 0 30px; margin: -15px 0;}
.grid_bloc_mixed .item 						{ margin: 15px 0; grid-row-end: span 4;}
.grid_bloc_mixed .item:nth-child(1)			{ grid-column-start: 1; grid-row-start: 1;}
.grid_bloc_mixed .item:nth-child(2)			{ grid-column-start: 2; grid-row-start: 2;}
.grid_bloc_mixed .item:nth-child(3)			{ grid-column-start: auto; grid-row-start: auto;}
}
@media (max-width:700px) {
.grid_bloc_mixed .container					{ grid-template-columns: 1fr; grid-gap: clamp(10px, 5vw, 20px); margin: 0;}
.grid_bloc_mixed .item 						{ margin: 0; grid-row-end: auto;}
.grid_bloc_mixed .item:nth-child(1),		 
.grid_bloc_mixed .item:nth-child(2)			{ grid-column-start: auto; grid-row-start: auto;}
.grid_bloc_mixed .titre_main                { display: none}
}



/* swipe mobile */ 
@media (max-width:700px) {
.swipe_mobile .container 								{ display: flex; gap: 10px; width: 100vw; margin-left: -5vw; overflow-x: auto; padding: 0 5vw 5vw 5vw;}
.swipe_mobile .container:before							{ width: 5vw; height: 4px; background: var(--bgColorLight); position: absolute; left: -5vw; bottom: 0; content: "";}
.swipe_mobile .container:after							{ width: 5vw; height: 4px; background: var(--bgColorLight); position: absolute; right: -5vw; bottom: 0; content: "";}
.swipe_mobile .container::-webkit-scrollbar 			{ width: 4px; height: 4px; background-color: #fff;}
.swipe_mobile .container::-webkit-scrollbar-thumb		{ background-color: var(--mainColor1);}
.swipe_mobile .container .item 							{ min-width: clamp(280px, 75vw, 360px);}
}


.card_item_v1								{ border-radius: 0; background: #fff; overflow: hidden; position: relative;}
.card_item_v1 .wrap							{ padding: 40px;}
.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: 30px;}
.card_item_v1 .sous_titre 					{ font-size: 20px;}
}
@media (max-width:700px) {
.card_item_v1 .wrap							{ padding: 20px;}
.card_item_v1 .sous_titre 					{ font-size: 16px; line-height: 22px;}
}







/***** 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;}
.moving_img .link							{ margin: 30px auto 0; }	
}



.atouts .show_hide                          { margin: 40px auto 0; }


