/***** banner *****/
.banner_fullscreen                          	{ position: relative; overflow: hidden;}
.banner_fullscreen:before 						{ position: absolute; left: 0; right: 0; top: 0; bottom: 0; background: linear-gradient(to top, rgba(26,32,38,100%) 0%, rgba(26,32,38,0) 80%); transition: none; z-index: 5; content: "";}
.banner_fullscreen img                     		{ height: 90vh; max-height: 1150px; min-height: 700px; object-fit: cover; object-position: center top; width: 100%; display: block;}

@media (max-width:1200px) {
.banner_fullscreen                      		{ padding-top: 80px;}
.banner_fullscreen img                     		{ height: 80vh; min-height: inherit; max-height: none;}
}
@media (max-width:1000px) {
.banner_fullscreen img                     		{ height: 75vw;}
}
@media (max-width:700px) {
.banner_fullscreen:before 						{ top: 30%;}
.banner_fullscreen img                     		{ height: 80vw;}
}



/***** intro */
.intro 										{ position: relative; text-align: center; max-width: 1040px; margin: var(--marginTB); margin-top: -220px; z-index: 10;}
.intro .chapo								{ margin: 0 auto;}
.intro .link								{ height: 80px; font-size: 20px; line-height: 74px; margin-top: clamp(15px, 3.4vw, 30px); padding: 0 40px;}
.intro .hide								{ padding-top: clamp(15px, 3vw, 20px);}

@media (max-width:1200px) {
.intro 										{ margin-top: -180px;}
}
@media (max-width:1000px) {
.intro 										{ margin-top: -100px;}
}
@media (max-width:700px) {
.intro 										{ margin-top: -12vw;}
.intro .link								{ height: 60px; font-size: 15px; line-height: 54px; padding: 0 30px;}
}


/***** card item : img + txt */
.card_item_v1								{ border-radius: var(--imgRadius); background: rgba(26,32,38,75%); box-shadow: 0 0 40px 0 rgba(20,26,30,25%); overflow: hidden; position: relative; display: grid; min-height: 540px;}
.card_item_v1:before						{ position: absolute; left: 0; right: 0; top: 0; bottom: 0; background: linear-gradient(140deg, rgba(57,67,77,100%) 0%, rgba(13,17,20,100%) 100%); opacity: 0.5; content: "";}
.card_item_v1 .wrap							{ padding: 40px 40px 60px 40px; position: relative; align-self: center;}
.card_item_v1 img 							{ display: inline-block; margin-bottom: 10px;}
.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: 0 0 4px 0;}
.card_item_v1 .chapo 						{ line-height: 140%;}
.card_item_v1 p								{ margin-bottom: 20px;}
.card_item_v1 .link_plus 					{ margin: 30px auto 0 auto;}
.card_item_v1 .link	 						{ height: 80px; font-size: 20px; line-height: 74px; margin-top: 10px; padding: 0 40px;}

@media (max-width:1200px) {
.card_item_v1								{ box-shadow: none; background: #242d35;}
.card_item_v1:before						{ display: none;}
.card_item_v1 .wrap							{ padding: 30px 30px 40px 30px;}
}
@media (max-width:700px) {
.card_item_v1 .wrap							{ padding: 15px 15px 20px 15px;}
.card_item_v1 img 							{ width: auto; height: 60px;}
.card_item_v1 .sous_titre 					{ font-size: 16px;}
.card_item_v1 p								{ display: none;}
.card_item_v1 .link_plus 					{ margin: -10px auto; border: none;}
.card_item_v1 .link							{ height: 60px; font-size: 15px; line-height: 54px; padding: 0 30px;}
.card_item_v1 .link_plus span				{ position: absolute; width: 100vw; height: 100vh; left: -50vw; top: -50vh; z-index: 50; content: "";}
}




/***** grid bloc mixed *****/
.grid_bloc_mixed 							{ position: relative; margin: var(--marginTB);}
.grid_bloc_mixed .bg 						{ width: 100%; height: 50vw; position: absolute; left: 0; top: 50%; transform: translateY(-50%); background: url("../images/bg_services.webp") center / cover no-repeat; content: "";}
.grid_bloc_mixed .bg:before					{ width: 100%; height: 50%; position: absolute; left: 0; top: -1px; background: linear-gradient(to bottom, rgba(26,32,38,100%) 20%, rgba(26,32,38,0) 100%); transition: none; content: "";}
.grid_bloc_mixed .bg:after					{ width: 100%; height: 50%; position: absolute; left: 0; bottom: -1px; background: linear-gradient(to top, rgba(26,32,38,100%) 20%, rgba(26,32,38,0) 100%); transition: none; content: "";}
.grid_bloc_mixed .container					{ display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 0 clamp(10px, 3vw, 60px); text-align: center; position: relative; z-index: 10;}
.grid_bloc_mixed .item 						{ margin: clamp(5px, 1.5vw, 30px) 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 .item:first-child			{ margin-top: 0;}
.grid_bloc_mixed .item:last-child			{ margin-bottom: 0;}

@media (max-width:1300px) {
.grid_bloc_mixed .container					{ grid-template-columns: 1fr 1fr;}
.grid_bloc_mixed .item 						{ 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:1200px) {
.grid_bloc_mixed .bg 						{ display: none;}
.grid_bloc_mixed .container					{ grid-gap: clamp(10px, 3vw, 60px);}
.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 .item:last-child			{ grid-column: span 2; min-height: inherit;}
}
@media (max-width:700px) {
.grid_bloc_mixed .item 						{ min-height: inherit;}
.grid_bloc_mixed .item:last-child			{ background: none; margin-top: 3vw;}
.grid_bloc_mixed .item:last-child:before	{ display: none;}
.grid_bloc_mixed .item:last-child .wrap		{ padding: 0;}
.grid_bloc_mixed .item:last-child img 		{ display: none;}
}
@media (max-width:500px) {
.grid_bloc_mixed .container					{ grid-template-columns: 1fr;}
.grid_bloc_mixed .item:last-child			{ grid-column: auto;}
}




/***** services *****/
.services .titre_main.bigger					{ margin: 0 0 -6% -2.5%;}
.services .card_item_v1 p.vehicules				{ /*font: 400 20px/170% "Gilda Display";*/ font-size: 18px; color: var(--mainColor1); padding-top: 2px;}

@media (max-width:1300px) {
.services .titre_main.bigger					{ margin: 0 0 -6% 5%;}
}
@media (max-width:1200px) {
.services .titre_main.bigger					{ display: none;}
}
@media (max-width:700px) {
.services .card_item_v1 p.vehicules				{ display: block; font-size: 13px;}
}




/*** variant 2 img ***/
.bloc_txt_img .img   							{ display: grid; grid-template-columns: 1fr 1fr; grid-gap: 20px;}
.bloc_txt_img .img img:first-of-type   			{ grid-column: span 2;}
.bloc_txt_img.reverse:before					{ right: 0; left: calc(50% + 100px);}

@media (max-width:1200px) { 
.bloc_txt_img:before							{ display: none;}
}
@media (max-width:700px) { 
.bloc_txt_img .img   							{ grid-gap: 3.5vw;}
}




/***** flotte *****/
.flotte .titre_main.bigger						{ margin: 0 -2.5% -5% 0; text-align: right;}
.flotte .img .titre_main						{ font-size: clamp(24px, 4vw, 30px); margin: 0; align-self: center;}

@media (max-width:1300px) {
.flotte .titre_main.bigger						{ margin: 0 0 -6% 5%; text-align: left;}
}
@media (max-width:1200px) {
.flotte .titre_main.bigger						{ display: none;}
}
@media (max-width:1000px) {
.flotte .img .titre_main						{ text-align: center;}
}
@media (max-width:450px) {
.flotte .img .titre_main						{ text-align: left;}
}




/***** moving img *****/
.moving_img									{ position: relative; overflow: hidden; margin: var(--marginTB);}
.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 15px;}
.moving_img .row .grid img 					{ width: auto; height: 500px; display: block; border-radius: var(--imgRadius); object-fit: cover; transition: all 300ms ease-in-out;}

@keyframes moving_img {
0%											{ transform: translate(0, 0);}
100% 										{ transform: translate(-100%, 0);}
}
@media (max-width:1600px) {
.moving_img .row .grid img 					{ height: 400px;}
}
@media (max-width:1200px) {
.moving_img .row .grid div 					{ padding: 0 10px;}
}
@media (max-width:1000px) {
.moving_img									{ padding: 0;}
.moving_img .row .grid img 					{ height: 60vw; max-height: 380px;}
}
@media (max-width:700px) {
.moving_img .row .grid div 					{ padding: 0 1.5vw;}

}



