
/***** banner : fullscreen *****/
.banner_fullscreen                          	{ position: relative; overflow: hidden; margin: var(--marginTB); margin-top: 0;}
.banner_fullscreen:before 						{ position: absolute; left: 0; right: 0; top: 0; bottom: 0; background: linear-gradient(to bottom, rgba(0,0,0,50%) 0%, rgba(0,0,0,0) 100%); transition: none; z-index: 5; content: "";}
.banner_fullscreen img                     		{ height: 100vh; max-height: 1200px; min-height: 600px; object-fit: cover; width: 100%; display: block; background: #444; filter: brightness(0.90);}
.banner_fullscreen .link      		       		{ margin: 15px 0 0 0;}
.banner_fullscreen .content                 	{ position: absolute; left: 5vw; right: 5vw; top: 0; margin: 0 auto; height: 100%; width: auto; max-width: 800px; display: grid; justify-content: center; align-items: center; text-align: center; z-index: 10; padding-top: 60px;}

.banner_fullscreen .slick-slider img 			{ animation: img_slider 50000ms ease-in-out infinite;}

.banner_fullscreen .slider_dots  				{ position: absolute; left: 0; right: 0; bottom: 40px; z-index: 15;}
.banner_fullscreen .slick-dots  				{ width: 100%; text-align: center; line-height: 0; margin: 0;}
.banner_fullscreen .slick-dots li 				{ display: inline-block; vertical-align: middle; margin: 0 10px;}
.banner_fullscreen .slick-dots button			{ border: none; font-size: 0; padding: 0; width: 60px; height: 4px; background: var(--mainColor2);}
.banner_fullscreen .slick-active button			{ background: #fff;}

@keyframes img_slider {
0%												{ transform: scale(1);/*clip-path: inset(0 0 0 0);*/}
50% 											{ transform: scale(1.2);}
100% 											{ transform: scale(1);}
}


@media (max-width:1200px) {
.banner_fullscreen .content                 	{ padding-top: 80px;}
}
@media (max-width:1000px) {
.banner_fullscreen img                     		{ height: 100vh; min-height: inherit; max-height: none;}
}
@media (max-width:700px) {
.banner_fullscreen .content                 	{ padding: 70px 0 5vw 0; align-items: end;}
.banner_fullscreen .link      		       		{ margin: 10px 0 0 0; width: 100%;}
.banner_fullscreen .slider_dots  				{ display: none}
}
@media (max-width:400px) {
.banner_fullscreen img                     		{ height: 70vh; }
}


/***** side btn fixed *****/
.side_btn 								{ position: fixed; right: 20px; top: 50%; transform: translateY(-50%); z-index: 200; display: grid; grid-gap: 10px;}
.side_btn a								{ display: block; width: 54px; height: 54px; line-height: 54px; border-radius:5px; position: relative; transition-duration: 0ms; transition-delay: 300ms; font-size:14px}
.side_btn a:after						{ position: absolute; right: 0; top: 50%; transform: translateY(-50%); background: 50% / contain no-repeat; width: 54px; z-index: 5; content: "";}
.side_btn a.tel:after					{ height: 20px; background-image: url("../images/tel.svg");}
.side_btn a.calendar:after				{ height: 22px; background-image: url("../images/calendar.svg");}
.side_btn a.gsm:after					{ height: 24px; background-image: url("../images/gsm.svg");}
.side_btn a.email:after					{ height: 16px; background-image: url("../images/email.svg");}
.side_btn a.facebook:after				{ height: 20px; background-image: url("../images/facebook.svg");}
.side_btn a.instagram:after				{ height: 22px; background-image: url("../images/instagram.svg");}
.side_btn a	span						{ display: block; width: 54px; height: 54px; position: absolute; top: 0; right: 0; background: #fff; border-radius: 5px; }
.side_btn a	i							{ position: absolute; left: 0; top: 0; font-style: normal; width: 160px; padding-left: 5px; text-align: center; color: #000; background: #fff;  border-radius: 5px; opacity: 0; transition: 100ms all 0ms;}

@media (min-width:1201px) {
.side_btn a:hover  						{ background: #fff; transition-delay: 0ms;}
.side_btn a:hover span					{ width: 160px; right: 50%; border-radius:5px;}
.side_btn a:hover span:after,
.side_btn a:hover span:before			{ opacity: 1; transition-delay: 200ms;}
.side_btn a:hover i						{ opacity: 1; transition-delay: 250ms;}
}
@media (max-width:1400px) {
.side_btn 								{ right: 20px;}
}

/* if side btn nav mob */
.side_btn.mob_nav .hide_desk 						{ display: none;}
.side_btn.mob_nav .hide_mob 						{ display: block;}

@media (max-width:700px) {
.side_btn.mob_nav 									{ display: none;}
.side_btn.mob_nav 									{ width: 100vw; right: 0; top: auto; bottom: 0; transform: none; z-index: 950; grid-template-columns: repeat(4, 1fr); grid-gap: 1px; background: #111;}
.side_btn.mob_nav a									{ width: 100%; height: 60px; border-radius: 0; background: #fff; font-size: 0; transition: none;}
.side_btn.mob_nav a:after							{ width: 100%; transition: none;}
.side_btn.mob_nav a.home_btn:after 					{ height: 22px; background-image: url("../images/icon_home.svg");}
.side_btn.mob_nav a	span							{ display: none;}

.side_btn.mob_nav .menu_mobile						{ width: 100%; height: 60px; cursor: pointer; position: relative; z-index: 850; background: #fff;}
.side_btn.mob_nav .menu_mobile div					{ width: 34px; height: 2px; background: #111; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}
.side_btn.mob_nav .menu_mobile div:before			{ width: 100%; height: 2px; background: #111; position: absolute; left: 0; top: 8px; content: "";}
.side_btn.mob_nav .menu_mobile div:after			{ width: 100%; height: 2px; background: #111; position: absolute; left: 0; top: -8px; content: "";}
.side_btn.mob_nav .menu_mobile.active div			{ height: 0; width: 28px;}
.side_btn.mob_nav .menu_mobile.active div:before	{ top: 0; transform: rotate(45deg);}
.side_btn.mob_nav .menu_mobile.active div:after		{ top: 0; transform: rotate(-45deg);}
}



/***** quote */

.quote_txt_img 											{ position: relative; padding: clamp(20px, 10vw, 20px) 0; margin: var(--marginTB);}
.quote_txt_img .container	                        	{ display: grid; grid-template-columns: auto 1fr; grid-gap: 0 60px; align-items: center; position: relative;}
.quote_txt_img .container.align_top                		{ align-items: start;}
.quote_txt_img .container .item							{ position: relative;}
.quote_txt_img .container .item :last-child 			{ margin-bottom: 0;}
.quote_txt_img .container p               				{ margin-bottom: 15px;}
.quote_txt_img .container .link							{ margin-top: 10px;}
.quote_txt_img .container :last-child					{ margin-bottom: 0;}
.quote_txt_img 	a										{ color: var(--mainColor1)}



@media (max-width:1200px) { 
.quote_txt_img .container	                        	{ grid-gap: 0 40px;}
}
@media (max-width:700px) { 
.quote_txt_img .container	                        	{ grid-template-columns: 1fr; grid-gap: 25px; text-align: left;}
.quote_txt_img .container p               				{ margin-bottom: 10px;}
}

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

.card_item_v1								{ border-radius: 0; background: #fff; overflow: hidden; position: relative; text-align: left; box-shadow: 40px 40px 40px rgba(0, 0, 0, 0.05);}
.card_item_v1 .wrap							{ padding: 60px}
.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: 10px 0;}
.card_item_v1 p								{ margin-bottom: 20px;}
.card_item_v1 .link.fullw 					{ width: 100%; padding: 0;}
.card_item_v1_number						{ background-color: var(--bgColorLight); width: 50px; text-align: center; color: var(--bgColorDark); font-size: 20px; padding: 25px 10px; line-height: .65; z-index: 0; display: block;}
.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								{ border-radius: 10px;}
.card_item_v1 .wrap							{ padding: 20px;}
.card_item_v1 .sous_titre 					{ margin: 0 0 10px 0;}
}

/***** grid bloc */

.grid_bloc	 								{ position: relative; padding: clamp(0, 2vw, 100px) 0; margin: var(--marginTB);} 
.grid_bloc:before	 						{ position: absolute; left: 0; right: 0; top: 15%; bottom: 15%; background-image: url("../images/bkg-gaume.webp"); background-repeat: repeat; background-attachment: fixed; transition: none; z-index: -1; content: ""; overflow:"hidden"} 
.grid_bloc .container						{ display: grid; grid-gap: clamp(10px, 5vw, 30px); text-align: center;}
.grid_bloc .titre_main	 					{ font-size: 40px; line-height: 48px; margin-bottom: 60px;}

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


/* 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;}
}
@media (max-width:1000px) {
.grid_bloc.col_4 .container					{ grid-template-columns: 1fr;}
}
@media (max-width:700px) {
.grid_bloc	 								{ margin:10px 0 0 0;} 					
.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 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);}


}




/***** moving img *****/
.moving_img									{ position: relative; overflow: hidden; margin: var(--marginTB); padding: 20px 0 0 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: auto; 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;}
.moving_img .row .grid img 					{ height: 350px;}
}
@media (max-width:1000px) {
.moving_img									{ padding: 0;}
.moving_img .row .grid img 					{ height: 350px;}
}
@media (max-width:700px) {
.moving_img .row .grid div 					{ padding: 0 5px;}
.moving_img .row .grid img 					{ height: 60vw; max-height: 350px;}
}


