/***** breadcrumb *****/
.breadcrumb									{ line-height: 0; position: relative; padding: 0 0 40px 0; margin: 0;}
.breadcrumb li 								{ display: inline-block; font-size: 14px; line-height: 20px; margin-right: 30px; letter-spacing: 0.8px; position: relative;}
.breadcrumb li:after						{ width: 1px; height: 10px; content: ""; position: absolute; right: -18px; top: 4px; background: var(--orange);}
.breadcrumb li:last-child 					{ margin: 0;}
.breadcrumb li:last-child:after 			{ display: none;}

@media (min-width:1600px) { 

}
@media (min-width:1201px) {
.breadcrumb a:hover                 		{ color: var(--orange);}
}
@media (max-width:1200px) { 
.breadcrumb									{ padding: 20px 0 40px 0;}
}
@media (max-width:1000px) { 
.breadcrumb									{ padding: 20px 0 5vw 0;}
}
@media (max-width:700px) { 
.breadcrumb									{ display: none;}
}



/***** link content page *****/
.page .ul_list a, 
.page p a							{ border-bottom: 1px solid #ccc; padding-bottom: 2px;}


@media (min-width:1201px) {
.page .ul_list a:hover,
.page p a:hover						{ color: #ae312e; border-color: #ae312e;}
}




/***** top page *****/
.top_page 											{ position: relative; padding-top: 160px; margin-bottom: calc(2vw + 20px);}
.top_page .content .chapo							{ margin-top: 25px;}
.top_page .bloc_txt_img .txt .wrap					{ max-width: 650px;}
.top_page .bloc_txt_img .sous_titre					{ margin: 20px 0;}
.top_page .bloc_txt_img .link						{ margin-top: 30px;}

@media (max-width:1200px) {
.top_page       { padding-top: 120px; }
}
@media (max-width:700px) {
.top_page       { padding-top: 80px; }
}


.bloc_services 										{ position: relative;}
.bloc_services .item .link							{ margin-top: 10px;}
.bloc_services:has(.bloc_dark) .container 			{ grid-gap: clamp(20px, 4vw, 40px);}



.advantages_tech .container							{ grid-gap: clamp(20px, 4vw, 40px);}
.advantages_tech .item:has(img)						{ align-self: center;}
.advantages_tech .item>img							{ max-width: 450px; margin: 0 auto;}
.advantages_tech .item :last-child					{ margin-bottom: 0;}



.bloc_txt											{ position: relative;}
.bloc_txt .shape_glow 								{ top: 50%; transform: translateY(50%);}
.bloc_txt .shape_glow.align_left					{ transform: rotate(180deg) translateY(50%);}

@media (max-width:600px) {
.bloc_txt_img .video                                { margin-top: 0; }
}



/***** blog *****/
.blog_listing .container 							{ grid-gap: 40px;}


/***** card blog v1 *****/
.card_blog_v1 										{ position: relative;}
.card_blog_v1 a 									{ display: block; text-align: center; overflow: hidden; border-radius: var(--imgRadius); letter-spacing: 0.4px;}
.card_blog_v1 .photo 								{ position: relative; overflow: hidden;}
.card_blog_v1 .photo img 							{ width: 100%; height: auto; display: block; object-fit: cover; aspect-ratio: 3/2; border-radius: 0;}
.card_blog_v1 .date 								{ width: 95px; height: 29px; text-align: center; font-size: 13px; line-height: 29px; border-radius: 5px; background: #ffffff45; backdrop-filter: blur(15px); position: absolute; right: 15px; top: 15px; z-index: 10;}
.card_blog_v1 .titre 								{ padding: 15px 30px; font-size: 16px; font-weight: 500; line-height: 150%;  background: #fff; display: grid; color: var(--bgColorDark); align-items: center; min-height: 80px;}

@media (min-width:1201px) {
.card_blog_v1 .titre 								{ transition: color 300ms ease-in-out;}
.card_blog_v1 a:hover  								{ transform: scale(0.95);}
.card_blog_v1 a:hover .titre						{ color: var(--orange);}
}
@media (max-width:600px) {
.card_blog_v1 .photo .date 							{ width: 90px; height: 30px; font-size: 13px; line-height: 30px; right: 10px; top: 10px;}
.card_blog_v1 .titre 								{ padding: 10px 25px 15px 25px; line-height: 22px; min-height: 80px;}
}





/***** page mod *****/
#mod .top_page 										{ padding-bottom: 0;}
#mod .bloc_txt h2, 		 
#mod .bloc_txt h3,			 
#mod .bloc_txt h4									{ font: 500 clamp(16px, 1.8vw, 25px)/140% "ClashGrotesk-Variable"; letter-spacing: 0; position: relative; margin-bottom: clamp(10px, 2vw, 15px); margin-top: clamp(30px, 8vw, 60px);}
#mod .bloc_txt h2 									{ font-size: clamp(18px, 2.1vw, 28px); line-height: 120%;}	

#mod .bloc_txt ul									{ margin: clamp(10px, 2vw, 15px);}
#mod .bloc_txt ul li								{ position: relative; padding-left: 20px; margin-bottom: 12px; line-height: 170%;}
#mod .bloc_txt ul li:before							{ width: 6px; height: 6px; position: absolute; left: 0; top: 10px; background: #000; content: "";}
#mod .bloc_txt ul li:last-child						{ margin-bottom: 0;}

@media (max-width:1000px) {
#mod .bloc_txt h2, 		 
#mod .bloc_txt h3,			 
#mod .bloc_txt h4									{ font-size: clamp(18px, 2.6vw, 25px);}
#mod .bloc_txt h2									{ font-size: clamp(18px, 3vw, 28px);}
}
@media (max-width:700px) {
#mod .bloc_txt ul li								{ padding-left: 18px; margin-bottom: 10px;}
#mod .bloc_txt ul li:before							{ top: 8px;}
}



/***** blog *****/
.dynamique img      { max-width: 100%; height: auto; margin: 40px auto; }

.dynamique h1,
.dynamique h2,
.dynamique h3,
.dynamique h4,
.dynamique h5,
.dynamique h6       { font: 500 clamp(20px, 1.6vw, 25px) / 140% "Roboto"; position: relative; margin-bottom: clamp(10px, 2vw, 15px); color: var(--orange); }

.bloc_texte.dynamique img   { margin-bottom: 40px; max-width: 100%; height: auto; border-radius: var(--imgRadius);}
.dynamique ul               { margin: 20px 0; }
.dynamique ul li            { position: relative; padding-left: 32px; line-height: 160%; margin-bottom: 12px; }
.dynamique ul li:before     { width: 18px; height: 18px; position: absolute; left: 0; top: 2px; background: url(../images/check.svg) 0 0 / contain no-repeat; content: "";}


/***** custom fancybox *****/
.fancybox-bg									{ background: #000000;}
.fancybox-is-open .fancybox-bg					{ opacity: 1;}
.fancybox-button,
.fancybox-infobar__body 						{ background: none; color: var(--mainColor2); font: 400 14px/60px var(--fontBody); letter-spacing: 0.8px;}
.fancybox-infobar 							    { top: 30px; left: auto; right: 90px; margin-left: 0;}
.fancybox-button--right     				    { display: none;}
.fancybox-button--left      				    { display: none;}
.fancybox-toolbar 								{ top: 30px; right: 30px; opacity: 1!important;}
.fancybox-show-nav .fancybox-arrow 				{ opacity: 1; transition: all 400ms ease-in-out;}
.fancybox-button--close 						{ width: 54px; height: 54px; border-radius: 0; background: var(--mainColor2); transition: all 400ms ease-in-out;}
.fancybox-button--close:before					{ width: 24px; height: 2px; left: calc(50% - 12px); top: calc(50% - 1px); background: #fff;}
.fancybox-button--close:after					{ width: 24px; height: 2px; left: calc(50% - 12px); top: calc(50% - 1px); background: #fff;}
.fancybox-arrow 								{ width: 50px; height: 50px; border-radius: 0; background: url("../images/arrow_next.svg") 54% 50% no-repeat var(--orange); margin-top: -40px; filter: none; }
.fancybox-arrow:after							{ display: none;}
.fancybox-arrow--right 							{ right: 30px;}
.fancybox-arrow--left 							{ left: 30px;}

.fancybox-infobar { display: none;}


@media (min-width:1201px) { 
.fancybox-button:hover:not([disabled])          { background-color: #000000;} 
.fancybox-button--close:hover:before			{ background: #fff;}
.fancybox-button--close:hover:after				{ background: #fff;}
.fancybox-arrow:hover:not([disabled])  			{ background-color: #000000; opacity: 1;}
}
@media (max-width:1200px) { 
.fancybox-arrow			 						{ border: none;}
}
@media (max-width:600px) { 
.fancybox-button,
.fancybox-infobar__body 						{ line-height: 40px;}
.fancybox-toolbar 								{ top: 0; right: 0;}
.fancybox-button--close 						{ width: 46px; height: 46px;}
.fancybox-button--close:before					{ width: 20px; left: calc(50% - 10px);}
.fancybox-button--close:after					{ width: 20px; left: calc(50% - 10px);}
.fancybox-arrow 								{ width: 40px; height: 50px; margin-top: -25px; background-size: 25% auto;}
.fancybox-arrow--right 							{ right: 0;}
.fancybox-arrow--left 							{ left: 0;}
} 