/*

Theme Name: Divi Community Child Theme

Description: Theme enfant de Divi par Divi Community

Author: Julien - WebMate

Author URI: https://www.divi-community.fr

Template: Divi

Version: 1.1

*/



/*

  ____ _____     _____      ____ ___  __  __ __  __ _   _ _   _ ___ _______   __

 |  _ \_ _\ \   / /_ _|    / ___/ _ \|  \/  |  \/  | | | | \ | |_ _|_   _\ \ / /

 | | | | | \ \ / / | |    | |  | | | | |\/| | |\/| | | | |  \| || |  | |  \ V /

 | |_| | |  \ V /  | |    | |__| |_| | |  | | |  | | |_| | |\  || |  | |   | |

 |____/___|  \_/  |___|    \____\___/|_|  |_|_|  |_|\___/|_| \_|___| |_|   |_|



*/





/* 

** CENTRER DU CONTENU VERTICALEMENT 

** Voir tuto : https://www.divi-community.fr/snippets-divi/centrer-du-contenu-verticalement

*/



.dc-centrer-verticalement {

	display: flex;

	flex-direction: column;

	justify-content: center;

  	display: -webkit-box;

	display: -webkit-flex;

	display: -moz-box;

	display: -ms-flexbox;

	-webkit-box-orient: vertical;

	-webkit-box-direction: normal;

	-webkit-flex-direction: column;

	 -moz-box-orient: vertical;

	 -moz-box-direction: normal;

	  -ms-flex-direction: column;

	-webkit-box-pack: center;

	-webkit-justify-content: center;

	-moz-box-pack: center;

	-ms-flex-pack: center;

}





/*

** INVERSER LE SENS DES COLONNES SUR MOBILE

** Voir tuto : https://www.divi-community.fr/snippets-divi/inverser-ordre-des-colonnes-sur-mobile

*/



@media only screen and (max-width : 980px) {

	.dc-inverser-colonnes--section .dc-inverser-colonnes--ligne {

		display: -webkit-flex;

		display: -ms-flex;

		display: flex;

		-webkit-flex-direction: column-reverse;

		-ms-flex-direction: column-reverse;

		flex-direction: column-reverse;

	}

}





/*

** MENU MOBILE : en pleine largeur et le hamburger devient une croix pour fermer

*/



.et_mobile_menu {

	margin-left: -30px;

	padding: 5%;

	width: calc( 100% + 60px);

}



.mobile_nav.opened .mobile_menu_bar:before {

	content: "\4d";

}





/* 

** AUGMENTER LA LARGEUR CHAMP RÉSULTAT CAPTCHA 

** Parfois, suivant la taille du texte, certains chiffres du résultat sont masqués

*/

.et_pb_contact_right p input {

	max-width: 50px;

}





/*

** METTRE EXPOSANTS ET INDICES À LA BONNE TAILLE

** Généralement, ils sont bien trop gros…

*/

sup, sub {

    font-size: 70%;

}





/*

** MODIFS 12 MAI 2025 

** CF7 Implementation

*/





/*********** H2 contact *****************/

.h2_contact{

	  font-weight: 700;

    font-size: 40px;

    color: #2C4295;

    line-height: 1.2em;

    padding-bottom: 16px;

    position: relative;

    margin-bottom:0.5em;

    text-align:center;

}



@media only screen and (max-width: 767px){

		.h2_contact{

			font-size:22px;

		}

}



.wpcf7{

	position:relative;

	z-index:100;

}





	.ParaForm-Container{

		display:-webkit-box;

		display:-ms-flexbox;

		display:flex;

		-webkit-box-pack:justify;

		    -ms-flex-pack:justify;

		        justify-content:space-between;

		-ms-flex-wrap:wrap;

		    flex-wrap:wrap;

	}



	.ParaForm-Container > p{

			width:calc((100% - 40px) / 2);

			margin:0px;

			margin-bottom: 10px;

	}



	@media screen and (max-width: 767px) {

			.ParaForm-Container > p{width:100%;}

	}



.wpcf7 input[type="text"],.wpcf7 input[type="email"], .wpcf7 textarea{

	  border:none;

    border-bottom: 2px solid rgba(51, 51, 51, 0.1);

    font-family: "Open Sans", Helvetica, Arial, Lucida, sans-serif;

    color:#333;

    font-weight:400;

    padding:16px;

    padding-bottom:10px;

    font-size:15px;

    background:none;

    padding-left:0px;

    padding-top: 5px;

    width:100%;

}





.wpcf7 textarea{

		vertical-align:top;

		height:150px;

		width:100%;

		line-height:1.5em;

}



.wpcf7 label{

		 display:inline-block;

		 font-size:14px;

		 font-weight:400;

		 font-family: "Open Sans", Helvetica, Arial, Lucida, sans-serif;

		 line-height:1.5em;

		 color:#333;

		 display:block;

}



.wpcf7 label.to_move{

	  -webkit-transition: 0.35s;

	  -o-transition: 0.35s;

	  transition: 0.35s;

	  -webkit-transform-origin: top left;

	      -ms-transform-origin: top left;

	          transform-origin: top left;

	  -webkit-transform: translate(0px, 14px);

	      -ms-transform: translate(0px, 14px);

	          transform: translate(0px, 14px);

}



/* Special pour pays  */



.wpcf7 .ParaForm-Container > .ParaForm__pays{

	padding-top: 20px;

}



.wpcf7 label.for_pays{

	display:inline-block;

	margin-right:20px;

}







.wpcf7 p.focus label.to_move{

	 -webkit-transform: translate(-5px, 0px) scale(0.75);

	     -ms-transform: translate(-5px, 0px) scale(0.75);

	         transform: translate(-5px, 0px) scale(0.75);

}



 @media screen and (max-width: 767px) {

 	.wpcf7 p.focus label.to_move{

	 	-webkit-transform: translate(-5px, 0px) scale(0.75);

	 	    -ms-transform: translate(-5px, 0px) scale(0.75);

	 	        transform: translate(-5px, 0px) scale(0.75);

	}	 

}





/*********** TOOLTIP NON VALIDE *****************/



.wpcf7 .wpcf7-not-valid-tip{

	color:#b7182e;

	display:block;

	font-family: "Open Sans", Helvetica, Arial, Lucida, sans-serif;

	font-size:13px;

	 margin-top: 2px;

}





/*********** BLOCK ENVOYER *****************/



.bloc_envoyer{

	 margin-top:30px;

	 text-align:right;

	 position:relative;	

}







.bloc_envoyer input[type="submit"]{

	  width:auto;

	  color: #ffffff;

    border:none;

    border-radius: 5px;

    letter-spacing: 1px;

    font-size: 16px;

    font-family: 'Work Sans', Helvetica, Arial, Lucida, sans-serif !important;

    font-weight: 600;

    text-transform: uppercase;

    background:#00ACE3;

    padding:1em 1.3em;

    -webkit-transition:0.35s;

    -o-transition:0.35s;

    transition:0.35s;

    cursor:pointer;

}



.bloc_envoyer input[type="submit"]:hover{

		 background:#82ddb0;

}



/*********** LOADER *****************/





/******* **********/

/* LOADER */

/******* **********/

.wpcf7-spinner{

	width:35px;

	height:35px;

	margin:0px auto;

	display:inline-block;

	padding:0px;

	border-radius:100%;

	border:3px solid;

	border-top-color:#00ACE3;

	border-bottom-color:#333333;

	border-left-color:#00ACE3;

	border-right-color:#333333;

	background:none;

	visibility: hidden;

}



.wpcf7-spinner:before{

	display:none;

}



@keyframes loader4 {

   from {-webkit-transform: rotate(0deg);transform: rotate(0deg);}

   to {-webkit-transform: rotate(360deg);transform: rotate(360deg);}

}

@-webkit-keyframes loader4 {

   from {-webkit-transform: rotate(0deg);}

   to {-webkit-transform: rotate(360deg);}

}





body div.wpcf7 .wpcf7-spinner{

	position:absolute;

	left:0%;

	top:4px;

	width:40px;

	height:40px;

	visibility: hidden;

}



body div.wpcf7 .wpcf7-form.submitting .wpcf7-spinner{

	visibility: visible;

	-webkit-animation: loader4 1s ease-in-out infinite;

	animation: loader4 1s ease-in-out infinite;

}



/*********** MISE EN FORME DE LA REPONSE *****************/



.wpcf7 form.init .wpcf7-response-output {

    display: none;

}



.wpcf7 .screen-reader-response {

    position: absolute;

    overflow: hidden;

    clip: rect(1px, 1px, 1px, 1px);

    height: 1px;

    width: 1px;

    margin: 0;

    padding: 0;

    border: 0;

}



body .wpcf7-form .wpcf7-response-output{

	  text-align:center;

		color:#b7182e;

		margin:20px auto;

		margin-top: 35px;

		padding:15px;

		border: 2px solid #b7182e;

		font-size:14px;

		opacity:0;

		border-radius:5px;

		font-family: "Open Sans", Helvetica, Arial, Lucida, sans-serif;

}





body .wpcf7-form.invalid .wpcf7-response-output{

		 	background:#b7182e;

			border:2px solid #b7182e;

			color:#fff;

			opacity:1;

}





body .wpcf7-form.sent .wpcf7-response-output{

		 	background:#82ddb0;

		 	color:#fff;

		 	border: 2px solid #82ddb0;

		 	opacity:1;

}





/*********** END FORM // champs obligatoire *****************/

.wpcf7 .end-form{

	  font-size: 14px;

    font-size: .875rem;

    font-style: italic;

    color: #a3a4ac;

    margin-top: 0px;

    font-family: "Open Sans", Helvetica, Arial, Lucida, sans-serif;



}



 @media screen and (max-width: 767px) {

 		.wpcf7 .end-form{

 			font-size:12px;

 		}

 }







/*********** AJOUT POUR LES OFFRES D'EMPLOI - MAI 2025 *****************/



.offre-emploi-template-default #main-content, .page-template-m_carriere  #main-content{

	background-size: contain;

    background-position: center top;

    background-image: url(https://rosin.group/wp-content/uploads/2023/03/BG-rosin-1.svg);

    background-repeat: no-repeat;

}

.offre-emploi-template-default #main-header,.page-template-m_carriere #main-header{

		background:#2c4295;

}



@media (min-width: 981px) {

   .offre-emploi-template-default #main-content .container:before {

   		display:none;

    }



    .page-template-m_carriere #main-content .container:before {

   		display:none;

    }

}



#page-container{

	--color_greyf:#333;

	--color_greyc:#EFEFEF;

	--color-bleuc:#00ACE3;

	--color-bleuf:#2C4295;

}



/* BTN PREV */

.btn_prev{

    display: inline-block;

    font-size: 1.2rem;

    -webkit-transition: .35s;

    transition: .35s;

    letter-spacing:-0.04em;

    text-transform:uppercase;

    color:var(--color_greyf);

    padding:0.5em;

	font-size:0.9rem;

	background:var(--color_greyc);

	transition:0.35s;

}

.btn_prev:hover{

	background:var(--color-bleuc);

	color:#fff;

}



/* Champ wysiwyg utilisé pour les offres d'emploi  */



.wysiwyg{

	font-size:1.2em;

	font-weight:400;

	letter-spacing:0em;

}	



.wysiwyg :first-child{

	margin-top:0px;

}



.wysiwyg h2{

	color:var(--color-bleuf);

	font-size:1.6em;

	font-weight:600;

	letter-spacing:-0.03em;

}



.wysiwyg h3{

	color:#333;

	font-size:1.3em;

	font-weight:700;

	letter-spacing:-0.03em;

}

.wysiwyg p + h2,.wysiwyg ul + h2{

	margin-top:0.5em;

}



.wysiwyg ul{

	margin-left: 1.3em;

    padding-left: 0;

    text-align: left;

    padding-top: .5em;

    margin-left: 0;

}



.wysiwyg ul li{

	 margin: 2px 0;

    list-style: none;

    position: relative;

    padding-left: 18px;

}



.wysiwyg ul li:before{

	 content: "";

    display: block;

    width: 6px;

    height: 6px;

    background: var(--color-bleuf);

    border-radius: 50%;

    position: absolute;

    left: 0;

    top: 13px;

    margin-top: -4px;

}



.center--txt{

	text-align:center;

}



/* ALL SITE-WIDTH  */



.site-width-pm{

	max-width:980px;

	margin:0px auto;

}



/* SINGLE JOB */



.SingleJob--Inner{

	padding:1.5em 2em;

}



.SingleJob--Inner, .SinglePost {

    background-color: #fff;

    padding: 35px 45px;

    margin-top: 20px;

    box-shadow: 0px 12px 18px -6px rgba(44, 66, 149, 0.36);

}



.SinglePost-Head{

	margin-bottom:2em;

	background:var(--color-bleuc);

	padding:1em 2em;



}



.IntrosingleOffer{

	background-color: #fff;

    padding: 35px 45px;

    box-shadow: 0px 12px 18px -6px rgba(44, 66, 149, 0.36);

    text-align:center;

}



.IntrosingleOffer-Title{

	font-size:1.5rem;

	color:var(--color-bleuf);

	margin-bottom:1em;

	font-weight:600;

}









.SinglePost-Head h1{

	color:#fff;

	font-size: 2rem;

	margin:0px;

	padding:0px;

	line-height:1.45em;

	padding-bottom:0.18em;

}



.SinglePost-Head .SinglePost-Tag{

	color:#fff;

	font-weight:400;

	font-size:1rem;

	letter-spacing:-0.04em;

}



.PageSubTitle{

	color:var(--color-bleuf);

	font-size:2.1rem;

	font-weight:600;

	letter-spacing:-0.03em;

	margin-bottom:0.5em;

}



.SingleJob-Bottom{

	margin-top:2em;

	margin-top: 30px;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -ms-flex-wrap: wrap;

    flex-wrap: wrap;

    -webkit-box-pack: justify;

    -ms-flex-pack: justify;

    justify-content: space-between;

    -webkit-box-align: center;

    -ms-flex-align: center;

    align-items: center;

}





.SingleJob-Bottom p {

/*    width: 50%;*/

    font-size: 13px;

    font-size: .8125rem;

    line-height: 1.35em;

    font-weight:400;

}



.btn, .dt-buttons button, .wysiwyg .btn{

    font-weight: 400;

    font-size: 18px;

    font-size: 1.125rem;

    display: inline-block;

    padding: 8px 15px;

    border: 0;

    border-radius: 3px;

    background: #445e88;

    color: #fff;

    line-height: 1.4em;

    -webkit-transition: .35s;

    transition: .35s;

}



.btn:hover, .dt-buttons button:hover, .wysiwyg .btn:hover{

	background:var(--color-bleuc);

}



.SingleJob-Bottom .btn {

    padding: 12px 25px;

}





.FormCandidature{

	margin-top:3em;

	margin-bottom:2em;

	background-color: #fff;

    padding: 35px 45px;

    box-shadow: 0px 12px 18px -6px rgba(44, 66, 149, 0.36);

}



.HeadSection{

	text-align:center;

    margin-top: 20px;

    

}





/*  *********************************************  */

/*  FORMULAIRE DE CANDIDATURE  */

/*  *********************************************  */



.form-candidature-container{

	margin-top: 2em;

}

.wpcf7-form .ContainerTwoColField {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -ms-flex-wrap: wrap;

    flex-wrap: wrap;

    -webkit-box-pack: justify;

    -ms-flex-pack: justify;

    justify-content: space-between;

}

.wpcf7-form .ContainerTwoColField .Col-Full , .wpcf7-form .ContainerTwoColField .bloc_envoyer{

    width: 100%;

}

.wpcf7-form .ContainerTwoColField .Col1 {

    width: 47.3684210526%;

}

.wpcf7-form .ContainerTwoColField p{

	margin: 0px;

    margin-bottom: 10px;

}

.wpcf7-form .ContainerTwoColField p.spe-marge-top{

    margin-top: 20px;

}



.wpcf7-form .ContainerTwoColField p.para_radio{

	margin-bottom:20px;

}



.wpcf7-form .ContainerTwoColField p.ParaForm__pays{

	margin-top:20px;

}



/*  BTN RADIO  */





.wpcf7-radio {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -ms-flex-wrap: wrap;

    flex-wrap: wrap;

    box-sizing: border-box;

}



span.wpcf7-list-item {

    margin: 0;

    margin-right: 20px;

    display: block;

    margin-top: 11px;

}



.wpcf7-list-item>label {

    position: relative;

    display: inline-block;

    vertical-align: middle;

    padding-left: 37px;

    color: var(--color-bleuf);

    margin-left: 0;

    z-index: 5

}



.wpcf7-list-item>label .wpcf7-list-item-label {

    display: block;

    cursor: pointer;

    line-height: 1.4em;

    font-weight: 400;

    font-size: 1.1em;

}



.wpcf7-list-item>label .wpcf7-list-item-label:after,.wpcf7-list-item>label .wpcf7-list-item-label:before {

    content: "";

    position: absolute;

    left: 0;

    top: -3px;

    width: 25px;

    height: 25px;

    background: 0 0;

    box-sizing:border-box;

}



.wpcf7-list-item>label .wpcf7-list-item-label:before {

    z-index: 2;

    border: none;

    background: #efefef;

    -webkit-transition: .3s;

    transition: .3s;

    border: 2px solid var(--color-bleuf);

}



.wpcf7-list-item>label input[type=checkbox],.wpcf7-list-item>label input[type=radio] {

    display: none;

    position: absolute;

    width: 100%;

    -webkit-appearance: none;

    -moz-appearance: none;

    appearance: none

}



.wpcf7-list-item>label input[type=checkbox]:checked+.wpcf7-list-item-label:after,.wpcf7-list-item>label input[type=radio]:checked+.wpcf7-list-item-label:after {

    background: var(--color-bleuf);

}



.wpcf7-list-item>label input[type=checkbox]:checked+.wpcf7-list-item-label:before,.wpcf7-list-item>label input[type=radio]:checked+.wpcf7-list-item-label:before {

    -webkit-transform: scale(0);

    transform: scale(0);

    background: 0 0

}







@media screen and (max-width: 1200px) {

	.single-offre-emploi .container, .page-template-m_carriere .container{

		width: 100%;

		padding-left:10px;

		padding-right: 10px;

		box-sizing:border-box;



	}

}



@media screen and (max-width: 767px) {



	.SingleJob-Bottom p{

		width:100%;

		margin-bottom:1.5em;

	}

	.wpcf7-form .ContainerTwoColField .Col1 {

	    width: 100%;

	}



	.SingleJob-Bottom .btn{

		margin:0px auto;

	}



	.IntrosingleOffer-Title{

		font-size:1.2rem;

	}



	.SinglePost-Head h1{

		font-size:1.5rem;

	}	



	.wysiwyg h2{

		font-size:1.35em;

	}



	.wysiwyg h3{

		font-size:1.15rem;

	}



	.PageSubTitle{

		font-size:1.5rem;

	}

}



@media screen and (max-width: 767px) {

	.IntrosingleOffer, .SingleJob--Inner, .SinglePost, .FormCandidature{

		padding:25px 10px;

	}

}



@media screen and (max-width: 767px) {

	.et_header_style_left .logo_container{

		width:calc(100% - 20px);

		left:20px;

	}

}



/* Page Carrières */



.IntrosingleOffer-BigTitle{

	font-size:2.2rem;

	color:var(--color-bleuf);

	margin:0px;

	font-weight:600;

	line-height:1.1em;

}



.IntrosingleOffer-desc{

	font-size:1rem;

	letter-spacing:-0.04em;

	margin-top:1.5em;

}





.ListOffer{

	margin-top:3em;

	display:flex;

	flex-wrap:wrap;

	justify-content:space-between;

}



.OfferResume{

	background-color: #fff;

    padding: 25px 25px;

    box-shadow: 0px 12px 18px -6px rgba(44, 66, 149, 0.36);

    width:calc((100% - 30px) / 2);

    margin-top:2em;

}

@media screen and (max-width: 767px) {

	.OfferResume{

		width:100%;

	}

}



.OfferResume-Title{

	color:var(--color-bleuc);

	margin-bottom:0.2em;

}



.OfferResume-Title a{

	color:var(--color-bleuc);

	transition: 0.35s;

}



.OfferResume-Title a:hover{

	color:var(--color-bleuf);

}



.OfferResume-country{

	color:#656565;

	font-size:0.9rem;

	letter-spacing:-0.04em;

	display:inline-block;

}

.OfferResume-country strong{

	text-transform:capitalize;

}



.OfferResume-Desc{

	letter-spacing:-0.03em;

}



.OfferResume-Tag{

	color:#656565;

	font-size:0.9rem;

	letter-spacing:-0.02em;

	text-transform:uppercase;

	margin-top: 1em;

	font-weight:500;

}



.OfferResume-paralink{

	text-align:center;

	margin-top:1.5em;

}



.FormCandidature--spontanee{

	margin-top:5em;

}



/** RADIO POUR TRIER LES OFFRES **/



.OrderList{

	background-color: #fff;

    padding: 25px 25px;

/*    box-shadow: 0px 12px 18px -6px rgba(44, 66, 149, 0.36);*/

    margin-top: 2em;

    text-align:center;

}



.OrderList .wpcf7-radio{

	justify-content:center;

}

.OrderList input[type="submit"]{

	display:none;

}



.BoxMessage{

	margin-top: 2em;

	background-color: #fff;

    padding: 25px 25px;

    text-align:center;

    box-shadow: 0px 12px 18px -6px rgba(44, 66, 149, 0.36);

}



@media screen and (max-width: 767px) {

	.IntrosingleOffer-BigTitle{

		font-size:1.5rem;

	}	

	.OfferResume:first-child{

		margin-top:0px;

	}

}



.small-txt-form{

	font-style:italic;

	font-size:0.8rem;

	color:#656565;

	margin-bottom:20px;

	line-height:1.3em;

	font-weight:400;

}