/**************************************************************EN TETE DU SITE***********************************************************************/
/*Définit la hauteur de l'entête*/
#entete {
	height 	: 85px; 
	background-color: #051D40;
}

.ent_gen {
	max-width 	: 1800px;
	background-color: #051D40;
}

.ent_soc_mob, .ent_men_mob { 
	display : none; 
}

.ent_soc {
	width 	   : calc(33% - 40px);
	max-width  : 694px;
	margin-left : 40px;
}

.ent_soc img {
	width 	: 55%;
}

.ent_men {
	width 			: calc(67% - 40px);
	max-width  		: 1105px;
}

.ent_men a {
	font-size 		: 16px;
	line-height 	: 25px;
	letter-spacing 	: 0px;
	text-transform	: uppercase;	
}

.men_sel a {
	font-size 	: 23px;
	line-height : 35px;
}
/**********************************************************POSITIONNEMENT DE LA PAGE***********************************************************************/
#page {
	min-height : calc(100vh - 170px);				/*(minimum la hauteur restante du navigateur en retirant entete et pied)*/
}

.page_int {
	min-height : calc(100vh - 170px);	
}

.fond_droite {
	padding 	: 40px 46px 40px 46px;
}

.fond_droite > div.ligne {
	width : 71px;
}

.titre_noir {
	font-size 		: 15px;
	line-height 	: 20px;	
	margin-bottom 	: 12.5px;
}

.ligne_noir {
	width 	: 80px;
	margin 	: auto;
}

.txt_gauche {
	padding-top   : 100px;
	font-size 	  : 15px;
	line-height   : 35px;
	padding-left  : 40px;
	padding-right : 40px;
	padding-bottom : 50px;
}

.titre_bas {
	font-size 		: 40px;
	line-height 	: 50px;
	padding-bottom  : 45px;
	padding-left 	: 40px;
}

/**************************************************************ACCUEIl***********************************************************************/
.acc_top {
	background-image 	: url("images/code.jpg");
	background-position : top right;
	background-repeat	: no-repeat;
	background-size		: 67% 816px;
	max-width   		: 1920px;
	margin				: auto;
}

.acc_txt {
	margin-left : 90px;
	width: 90%;
	margin: auto;
}

.acc_txt > div > div:nth-child(1) {
	font-size 		: 20px;
	line-height		: 34px;
	padding-top 	: 36px;

}

.savoir-faire-titre {
	font-size: 46px;
	line-height: 60px;
	letter-spacing: 5.67px;
	padding-top: 42px;
	text-align: center;
}

.acc_txt > div > div:nth-child(2) {
	font-size: 16px;
}


.acc_txt > div:nth-child(2) {
	font-size 	: 32px;
	line-height : 73px;
	color: #051D40;
}

.acc_liens {
	margin 		: 22px 27px 0px 45px;
}

.liens_btn {
	width	 : 210px;
	height	 : 49px;
}

.liens_btn img {
	height : 12px;
}

.liens_btn a {
	margin-left 	: 16px;
	font-size 		: 13px;
	line-height 	: 20px;
	letter-spacing 	: 0px;
}

.acc_infos {
	grid-row-end: 3;
	grid-column-start: 2;
	font-size		: 14px;
	line-height 	: 24px;
	padding-bottom 	: 13px;
	padding-top 	: 13px;
}

.acc_bottom {
	padding-top  	: 93px;
	padding-bottom  : 150px;
}

.acc_sol_titre {
	font-size 		: 32px;
	line-height 	: 40px;
}

.acc_sol_ligne {
	padding-top 	: 15px;
	margin-bottom 	: 64px;
}


.acc_sol_pave {
	height 		: 250px;
	width		: 30%;
	border-radius: 10px;
}

.acc_sol_pave img {
	height	: 115%;
}

.acc_sol_int .acc_sol_pave:nth-child(1), .acc_sol_int .acc_sol_pave:nth-child(2) {
	border-bottom : solid 1px #E2E2E2;
	border-right  : solid 1px #E2E2E2;
}

.acc_sol_int .acc_sol_pave:nth-child(3) {
	border-bottom : solid 1px #E2E2E2;
}

.acc_sol_int .acc_sol_pave:nth-child(4), .acc_sol_int .acc_sol_pave:nth-child(5) {
	border-right  : solid 1px #E2E2E2;
}

.acc_sol_pave div:nth-child(1) {
	margin-top : 35px;
	height: 20%;
}

.acc_sol_pave div:nth-child(2) {
	font-size 	: 20px;
	line-height : 30px;
	margin-top 	: 17px;
}

.acc_sol_pave div:nth-child(3) {
	font-size 	: 10px;
	line-height : 24px;
	width		: 85%;
	margin	 	: 5% auto 0px auto;
	padding: 0 5% 0 5%;
}


/**************************************************************HORLOGE A BASCULE***********************************************************************/


#years .segment-overlay,
#days .segment-overlay {
    width: 60px;
}

#years .time-segment,
#days .time-segment {
    width: 60px;
    font-size: 60px;
}
  
.countdown {
    display: flex;
    flex-direction: column;
	font-weight: bold;
	font-size: 15px;
    font-family: Poppins;
	color: #051D40;
    justify-content: space-between;
}

 
.yearday, .hourminsec {
    display: flex;
    flex-direction: row;
    gap : 13px; /* Espace entre les segments */
    justify-content: center;
}


.time-section {
    text-align: center;
    font-size: 13px; /* Taille de police pour les titres */
}
  
.time-group {
    display: flex;
    gap: 5px; /* Espace entre les segments */
}
  
.time-segment {
    display: block;
    font-size: 32px; /* Taille de police des chiffres*/
    font-weight: 900;
    width: 32px; /* Largeur des segments */
}
  
.segment-display {
    position: relative;
    height: 100%;
}
  
.segment-display__top,
.segment-display__bottom {
    overflow: hidden;
    text-align: center;
    width: 100%;
    height: 50%;
    position: relative;
}
  
.segment-display__top {
    line-height: 1.5;
    color: #eee;
    background-color: #051D40;
}
  
.segment-display__bottom {
    line-height: 0;
    color: #fff;
    background-color: #0a2b5e;
}
  
.segment-overlay {
    position: absolute;
    top: 0;
    perspective: 400px;
    height: 100%;
    width: 32px; /* Largeur de l'overlay */
}
  
.segment-overlay__top,
.segment-overlay__bottom {
    position: absolute;
    overflow: hidden;
    text-align: center;
    width: 100%;
    height: 50%;
}
  
.segment-overlay__top {
    top: 0;
    line-height: 1.5;
    color: #fff;
    background-color: #051D40;
    transform-origin: bottom;
}
  
.segment-overlay__bottom {
    bottom: 0;
    line-height: 0;
    color: #eee;
    background-color: #0a2b5e;
    border-top: 2px solid black;
    transform-origin: top;
}
  
.segment-overlay.flip .segment-overlay__top {
    animation: flip-top 0.8s linear;
}
  
.segment-overlay.flip .segment-overlay__bottom {
    animation: flip-bottom 0.8s linear;
}
  
@keyframes flip-top {
    0% {
      transform: rotateX(0deg);
    }
    50%,
    100% {
      transform: rotateX(-90deg);
    }
}
  
@keyframes flip-bottom {
    0%,
    50% {
      transform: rotateX(90deg);
    }
    100% {
      transform: rotateX(0deg);
    }
}

/************************************************************PAGE CLIENT******************************************************************/
.clients {
	grid-template-columns	: repeat(4, 134px);
	grid-column-gap			: 80px;
    grid-row-gap			: 20px;
	justify-content			: center;
}

.clients img {
	height 		: 99px;
	width		: 134px;
	object-fit 	: contain;
}

/************************************************************PAGE EQUIPE******************************************************************/
.equipe {
	grid-template-columns	: repeat(3, 193px);
	grid-template-rows		: repeat(2, 303px);
	grid-column-gap			: 99px;
    grid-row-gap			: 142px;
	justify-content			: center;
	align-items				: center;
}

.equipe div.eq_princ:nth-child(2) {
	grid-row-start 		: 1;
	grid-row-end   		: 3;
	grid-column-start: 	2;
	grid-column-end 	: 3;
}

.equipe img {
	margin-top  : 24px;
	height 		: 177px;
	width		: 137px;
	object-fit 	: contain;
}

.eq_princ {
	font-size 	: 12px;
	line-height : 18px;
	height		: 257px;
}


.eq_princ div:nth-child(2) {
	margin-top : 10px;
}

/************************************************************PAGE CONTACT******************************************************************/
.ctc_info {
	font-size 		: 18px;
	line-height	 	: 33px;
	margin-left 	: 60px;
	margin-top  	: 86px;
	margin-bottom 	: 100px;
}

.ctc_info > div div:nth-child(1) {
	height 		: 29px;
	margin-top 	: 3.5px;
}

.ctc_info img {
	height : 29px;
}

.ctc_info > div:nth-child(n+2) {
	margin-top : 27px;
}

.ctc_info > div div:nth-child(2) {
	margin-left : 18px;
}

.ctc_map {
	width		: 349px;
}

.ctc_input, .team_input {
	width 			: 566px;
	font-size 		: 12px;
	line-height 	: 21px;
	padding		 	: 48px 105px 45px 105px;
	margin-top		: 88px;
}

.ctc_msg, .team_msg {
	font-size 		: 12px;
	line-height 	: 25px;
	margin-top  	: 30px;
	margin-bottom 	: 20px;
}	

.ctc_input > div label {
	display 	  : block;
	margin-bottom : 9px;
}

.ctc_input input[type=text], .ctc_input textarea {
	font-size 		: 12px;
	line-height 	: 34px;
	width 			: 356px;
	padding			: 0px 10px 0px 10px;
}

.team_input input[type=text], .team_input textarea {
	font-size 		: 12px;
	line-height 	: 31px;
	width 			: 356px;
	padding			: 0px 10px 0px 10px;
}

.ctc_input textarea {
	height : 88px;
}

.team_input textarea {
	height : 75px;
}

.ctc_input input[type=submit], .team_input input[type=submit] {
	margin-top 		: 30px;
	height 			: 41px;
	width 			: 182px;
	font-size		: 15px;
	line-height		: 23px;
	padding-left 	: 76px;
}

/*****************************************************Page TELEMAINTENANCE*********************************************************************/
.center {
	text-align : center;
}

.team_input {
	margin-top : 24px;
	width 	   : 649px;
	padding	   : 36px 146px 36px 146px;
	font-size  : 12px;
}

.team_input div.ligne {
	margin			: 16px auto 0px auto;
}

.team_input > div label {
	display 	  : block;
	margin-bottom : 8px;
}

.team_msg {
	margin-top 		: 9px;
	font-size 		: 12px;
	margin-bottom 	: 9px;
}

.team_img {
	width 		: 344px;
	margin-top 	: 30px;
}

.team_jlm {
	width 			: 496px;
	font-size 		: 12px;
	line-height 	: 21px;
	margin-top		: 30px;
	padding	  		: 25px 76px 25px 76px;
}

.team_img img {
	width : 147px;
	height: 111px;
}

.team_input input[type=submit] {
	margin-top 		: 18px;
	height 			: 35px;
	width 			: 193px;
	font-size		: 12px;
	line-height		: 18px;
}

/*********************************************************PIED DU SITE***********************************************************************/
#pied {
	background-color: #051D40;
}

.pie_gen {
	max-width 		: 1920px;
	height			: 85px;
	background-color: #051D40;
}

.pie_log {
	margin-left : 90px;
	margin-right: 90px;
	display 	: flex;
	justify-content : space-between;
}

.pie_log > div:nth-child(1) {
	width : 1189px;
}

.pie_log > div > div.ligne {
	margin-top : 18px;
}

.pie_log img {
	margin-top 	: 40px;
	height 		: 43px;
}

.pie_contact a {
	font-size 		: 17px;
	line-height 	: 25px;
	margin-top		: 35px;
	height 			: 43px;
	width			: 185px;
}

.pie_copy {
	font-size 		: 14px;
	line-height 	: 21px;
	margin-top 		: 35px;
	margin-left 	: 100px;
}

/************************************************ERREURS*********************************************************************/
.error_txt > div:nth-child(1) {
	font-size 	: 28px;
	margin-top 	: 32px;
}

.error_txt > div:nth-child(2) { margin-top : 52px; }

.error_txt > div:nth-child(3) { margin-top : 20px; }

.error_txt > div:nth-child(4) { margin-top : 30px; }

.error_txt > div:nth-child(4) a  { font-size : 16px; }

.error_txt { font-size : 18px; }

