@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

* {
  box-sizing: border-box; 
}
body {
  margin: 0; 
  font-weight: 500;
  background-color: #6BB6CB
;
}
body:not(#home){
  background: url(../images/fond-bleu-1920x1080.jpg) no-repeat center center fixed; 
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;  
;
}

body#home {
  margin: 50px ; 
  background-color: #FFFFFF;
}


h1,
h2,
h3,
h4,
h5,
h6 {
	-webkit-font-feature-settings: "lnum" 1;
	font-feature-settings: "lnum" 1;
	font-variant-numeric: lining-nums;
	font-weight: 300;
	line-height: 1.4;
	margin-bottom: 0.65em;
	margin-top: 0.65em;
	font-family: 'Roboto', sans-serif;
	color: #FFFFFF;
	
}
h1 {
	font-size: 54px;
	font-weight: 300;
	margin: 30px 0 60px 0!important;
	text-transform: uppercase;
	width: 100% !important;
	display: inline-block;
	clear: both;
	
}
h2 {
	font-size: 32px;
	font-weight: 300;
	margin-bottom: 30px !important;
	width: 100% !important;
}
h3 {
	font-size: 40px;
	font-weight: 300;
}
h4 {
	font-size: 40px;
	font-weight: 300;
}

h5 {
	font-size: 20px;
}

h6 {
	font-size: 17px;
}

.alert.alert-success{
	background-color: #a8e0ef !important;
	color: #333;
  border-radius: 40px;
  display: block;
  margin:15px 0;
  

}


h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
	margin-top: 0;
}

h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child {
	margin-bottom: 0;
}

#home h1,
#home h2,
#home h3,
#home h4,
#home h5,
#home h6 {
	color: #224A81;
}



#home h1 {
	font-size: 50px;
	font-weight: 300;
	margin: 60px 0 0 0!important;
	text-transform: uppercase;
	width: 100% !important;
	display: inline-block;
	clear: both;
	width: 100%;
	
}
#home h2 {
	font-size: 36px;
	font-weight: 300;
	margin: -15px  0 15px 0 !important;
	float: left;
	width: 100%;
}
#home h3 {
	font-size: 24px;
	font-weight: 200;
	width: 100%;
}


header h1,
header h2,
header h3,
header h4,
header h5,
header h6 {
	color: #224A81;
}

header{
	max-height:200px !important;
	width: 100%;
	background-color: #FFF;
	margin: 0;
	padding: 15px
}

header h1 {
	font-size: 35px;
	font-weight: 300;
	margin:10px 0 10px 0!important;
	text-transform: uppercase;
	width: 100% !important;
	display: inline-block;
	clear: both;
	width: 100%;
	
}
header h2 {
	font-size: 26px;
	font-weight: 300;
	margin: -15px  0 15px 0 !important;
	float: left;
	width: 100%;
}
header h3 {
	font-size: 18px;
	font-weight: 200;
	width: 100%;
}





section {
  width: 100%;
  height: calc(100vh - 280px) !important;
  padding: 0;
  margin: 0;
  max-width: none;
      align-items: center;  // verticall center

}



header.page_toplogo {
    background-color: #FFF;

}

header.page_toplogo img {
    max-height: 50px;
    margin: 0;
}




.intro {
  height: 100vh;
  opacity: 0;
  background-color: #FFF;

}

.intro #logo img {
	max-width: 300px;
}


.content {
  display: table-cell;
  vertical-align: middle;
}



p {
	line-height: 0.8rem;
  font-size: 1.5em;
  font-weight: 300;
  color: #FFF;
  text-align: left;
}

a {
  font-weight: 700;
  color: #373B44;
  position: relative;
  
}



/*page preloader*/
.preloader {
	background: rgba(255, 255, 255, 0.99);
	bottom: 0;
	height: 100%;
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 13000;
}

.no-js .preloader,
.lt-ie9 .preloader,
.lt-ie10 .preloader {
	display: none;
}

.preloader_image {
	background: url(../img/preloader.gif) no-repeat 50% 50% transparent;
	height: 256px;
	left: 50%;
	margin: -128px 0 0 -128px;
	position: absolute;
	top: 50%;
	width: 256px;
}

/* animated elements */
.animate {
	visibility: hidden;
}

.no-js .animate,
.lt-ie10 .animate,
.lt-ie9 .animate {
	visibility: visible;
}

.animated {
	visibility: visible !important;
}



.p-0{
	padding: 0 !important;
}
.p-50{
	padding: 50px !important;
}
.p-100{
	padding: 100px !important;
}

.m-0{
	margin: 0 !important;
}
.m-50{
	margin: 50px !important;
}
.m-100{
	margin: 100px !important;
}


.mt-0 {
    margin-top: 0px !important;
}
.mt-5 {
    margin-top: 5px !important;
}
.mt-10 {
    margin-top: 10px !important;
}
.mt-15 {
    margin-top: 15px !important;
}
.mt-20 {
    margin-top: 20px !important;
}
.mt-25 {
    margin-top: 25px !important;
}
.mt-30 {
    margin-top: 30px !important;
}
.mt-40 {
    margin-top: 40px !important;
}
.mt-50 {
    margin-top: 50px !important;
}
.mt-60 {
    margin-top: 60px !important;
}
.mt-80 {
    margin-top: 80px !important;
}

.mr-0 {
    margin-right: 0px !important;
}
.mr-5 {
    margin-right: 5px !important;
}
.mr-10 {
    margin-right: 10px !important;
}
.mr-15 {
    margin-right: 15px !important;
}
.mr-20 {
    margin-right: 20px !important;
}
.mr-25 {
    margin-right: 25px !important;
}
.mr-30 {
    margin-right: 30px !important;
}
.mr-40 {
    margin-right: 40px !important;
}
.mr-50 {
    margin-right: 50px !important;
}
.mr-60 {
    margin-right: 60px !important;
}
.mr-80 {
    margin-right: 80px !important;
}

.mb-0 {
    margin-bottom: 0px !important;
}
.mb-5 {
    margin-bottom: 5px !important;
}
.mb-10 {
    margin-bottom: 10px !important;
}
.mb-15 {
    margin-bottom: 15px !important;
}
.mb-20 {
    margin-bottom: 20px !important;
}
.mb-25 {
    margin-bottom: 25px !important;
}
.mb-30 {
    margin-bottom: 30px !important;
}
.mb-40 {
    margin-bottom: 40px !important;
}
.mb-50 {
    margin-bottom: 50px !important;
}
.mb-60 {
    margin-bottom: 60px !important;
}
.mb-80 {
    margin-bottom: 80px !important;
}
.pt-0 {
    padding-top: 0px !important;
}
.pt-5 {
    padding-top: 5px !important;
}
.pt-10 {
    padding-top: 10px !important;
}
.pt-15 {
    padding-top: 15px !important;
}
.pt-20 {
    padding-top: 20px !important;
}
.pt-25 {
    padding-top: 25px !important;
}
.pt-30 {
    padding-top: 30px !important;
}
.pt-40 {
    padding-top: 40px !important;
}
.pt-50 {
    padding-top: 50px !important;
}
.pt-60 {
    padding-top: 60px !important;
}
.pt-80 {
    padding-top: 80px !important;
}

.pb-0 {
    padding-bottom: 0px !important;
}
.pb-5 {
    padding-bottom: 5px !important;
}
.pb-10 {
    padding-bottom: 10px !important;
}
.pb-15 {
    padding-bottom: 15px !important;
}
.pb-20 {
    padding-bottom: 20px !important;
}
.pb-25 {
    padding-bottom: 25px !important;
}
.pb-30 {
    padding-bottom: 30px !important;
}
.pb-40 {
    padding-bottom: 40px !important;
}
.pb-50 {
    padding-bottom: 50px !important;
}
.pb-60 {
    padding-bottom: 60px !important;
}
.pb-80 {
    padding-bottom: 80px !important;
}

.pr-0 {
    padding-right: 0px !important;
}
.pr-5 {
    padding-right: 5px !important;
}
.pr-10 {
    padding-right: 10px !important;
}
.pr-15 {
    padding-right: 15px !important;
}
.pr-20 {
    padding-right: 20px !important;
}
.pr-25 {
    padding-right: 25px !important;
}
.pr-30 {
    padding-right: 30px !important;
}
.pr-40 {
    padding-right: 40px !important;
}
.pr-50 {
    padding-right: 50px !important;
}
.pr-60 {
    padding-right: 60px !important;
}
.pr-80 {
    padding-right: 80px !important;
}

.pl-0 {
    padding-left: 0px !important;
}
.pl-5 {
    padding-left: 5px !important;
}
.pl-10 {
    padding-left: 10px !important;
}
.pl-15 {
    padding-left: 15px !important;
}
.pl-20 {
    padding-left: 20px !important;
}
.pl-25 {
    padding-left: 25px !important;
}
.pl-30 {
    padding-left: 30px !important;
}
.pl-40 {
    padding-left: 40px !important;
}
.pl-50 {
    padding-left: 50px !important;
}
.pl-60 {
    padding-left: 60px !important;
}
.pl-80 {
    padding-left: 80px !important;
}

/*BUTTONS*/
.btn-default {
	font-family: 'Roboto', sans-serif;
  font-size: 30px;
  color:#FFFFFF;
  letter-spacing: 1px;
  padding: 5px 35px;
  padding: 5px 0;
  border: 0;
  border-radius: 40px;
  background: #244055;
    transition: all 0.3s ease 0s;
    width: 220px;

}
	.link{
		  border-radius: 10px !important;

	}

.btn-default:hover {
  color: #FFF;
  background: #48708e;
  border: 2px solid #5f8bac;
  
}


.btn-primary {
  font-family: Raleway-SemiBold;
  font-size: 13px;
  color: rgba(58, 133, 191, 0.75);
  letter-spacing: 1px;
  line-height: 15px;
  border: 2px solid rgba(58, 133, 191, 0.75);
  border-radius: 40px;
  background: transparent;
  transition: all 0.3s ease 0s;
}

.btn-primary:hover {
  color: #FFF;
  background: rgba(58, 133, 191, 0.75);
  border: 2px solid rgba(58, 133, 191, 0.75);
}

.btn-success {
  font-family: Raleway-SemiBold;
  font-size: 13px;
  color: rgba(103, 192, 103, 0.75);
  letter-spacing: 1px;
  line-height: 15px;
  border: 2px solid rgba(103, 192, 103, 0.75);
  border-radius: 40px;
  background: transparent;
  transition: all 0.3s ease 0s;
}

.btn-success:hover {
  color: #FFF;
  background: rgb(103, 192, 103, 0.75);
  border: 2px solid rgb(103, 192, 103, 0.75);
}

.btn-info {
  font-family: Raleway-SemiBold;
  font-size: 13px;
  color: rgba(91, 192, 222, 0.75);
  letter-spacing: 1px;
  line-height: 15px;
  border: 2px solid rgba(91, 192, 222, 0.75);
  border-radius: 40px;
  background: transparent;
  transition: all 0.3s ease 0s;
}

.btn-info:hover {
  color: #FFF;
  background: rgba(91, 192, 222, 0.75);
  border: 2px solid rgba(91, 192, 222, 0.75);
}

.btn-warning {
  font-family: Raleway-SemiBold;
  font-size: 13px;
  color: rgba(240, 173, 78, 0.75);
  letter-spacing: 1px;
  line-height: 15px;
  border: 2px solid rgba(240, 173, 78, 0.75);
  border-radius: 40px;
  background: transparent;
  transition: all 0.3s ease 0s;
}

.btn-warning:hover {
  color: #FFF;
  background: rgb(240, 173, 78, 0.75);
  border: 2px solid rgba(240, 173, 78, 0.75);
}

.btn-danger {
  font-family: Raleway-SemiBold;
  font-size: 13px;
  color: rgba(217, 83, 78, 0.75);
  letter-spacing: 1px;
  line-height: 15px;
  border: 2px solid rgba(217, 83, 78, 0.75);
  border-radius: 40px;
  background: transparent;
  transition: all 0.3s ease 0s;
}

.btn-danger:hover {
  color: #FFF;
  background: rgba(217, 83, 78, 0.75);
  border: 2px solid rgba(217, 83, 78, 0.75);
}


/*FORM*/
.form-group {
	position: relative;
}

[class*='col-'] > .form-group {
	margin-bottom: 0;
}

[class*='col-'] > .form-group + .form-group {
	margin-top: 10px;
}

.has-placeholder label {
	display: none;
}

/* select styling */
select[multiple] {
	height: auto;
}

select option,
.form-control option {
	background-color: #fff;
	color: #244055;
}

.form-control-unstyled {
	background-color: transparent;
	border: none;
}

.form-control,
.form-control:focus {
	box-shadow: none;
	background-color: #fff;
	
}

.form-control.invalid {
	box-shadow: 0 0 0 2px #AA9863;
}

.form-control:focus {
	background-color: #f2f2f2;
	border-color: #bbb;
}

.form-control:-moz-placeholder {
	color: #fff;
	opacity: 1;
}

.form-control::-moz-placeholder {
	color: #fff;
	font-style: normal;
	opacity: 1;
}

.form-control:-ms-input-placeholder {
	color: #fff;
	font-style: normal;
}

.form-control::-webkit-input-placeholder {
	color: #244055;
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
}

.form-control:focus:-moz-placeholder {
	color: transparent;
}

.form-control:focus::-moz-placeholder {
	color: transparent;
}

.form-control:focus:-ms-input-placeholder {
	color: transparent;
}

.form-control:focus::-webkit-input-placeholder {
	color: transparent;
}

/*icons for forms */
form label + [class*="fa-"] {
	font-size: 16px;
	left: 28px;
	position: absolute;
	text-align: center;
	top: 60px;
	width: 1em;
}

form .has-placeholder label + [class*="fa-"] {
	top: 15px;
}

form label + [class*="fa-"] + .form-control {
	padding-left: 60px;
}

label {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.6em;
	text-transform: uppercase;
}

.contact3 .custom-file-label {
	background-color:#244055;
}

.contact3 .custom-file-label:after {
	background-color: #000;
	border:0;
	color: #CCC;
}


.contact3 .custom-file-label.alt {
	border: 1px solid #244055;
}

.contact3 .custom-file-label.alt {
	background-color:transparent;
}

.contact3 .custom-file-label.alt:after {
	background-color: transparent;
	border:1px solid #244055;
	color: #244055;
	font-weight: 700;
}


.contact3 input[type="text"],
.contact3 input[type="email"],
.contact3 input[type="url"],
.contact3 input[type="password"],
.contact3 input[type="search"],
.contact3 input[type="tel"],
.contact3 input[type="number"],
.contact3 input[type="file"],
.contact3 textarea,
.contact3 select,
.contact3 .form-control {
	/*background-color:transparent;*/
	background-color:#FFF;
	border: 1px solid #244055;
	border-radius: 40px;
	color: #244055;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: -0.02em;
	padding: 10px 30px 11px;
	text-transform: uppercase;
	width: 100%;

}





.contact3 textarea {
	height:320px !important;
}

.contact3 textarea.recrutement {
	height:260px !important;
}

.contact3  .radio{
	text-transform: uppercase;
	font-weight: 700;
	line-height: 18px;
	font-size: 12px;
	padding-left: 15px;
	color:#939598;
}

.contact3  .radio label {
	font-weight: 700;
	line-height: 18px;
	font-weight: 12px;
	color:#244055;
	padding-left: 15px;
	padding-right: 5px;
	
}
.contact3  .radio span{
	margin-right: 15px;
}

.contact3  input[type=radio] {
    -border-radius: 4px;
    height: 20px;
    width: 20px;
    background: #fff;
    border: 1px solid #244055;
    margin: 10px 20px 0 0;;
}


.contact3 .form-control:-moz-placeholder {
	color: #244055;
	opacity: 1;
}

.contact3 .form-control::-moz-placeholder {
	color: #244055;
	font-style: normal;
	opacity: 1;
}

.contact3 .form-control:-ms-input-placeholder {
	color: #244055;
	font-style: normal;
}

.contact3 .form-control::-webkit-input-placeholder {
	color: #244055;
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
}

.contact3 .form-control:focus:-moz-placeholder {
	color: transparent;
}

.contact3 .form-control:focus::-moz-placeholder {
	color: transparent;
}

.contact3 .form-control:focus:-ms-input-placeholder {
	color: transparent;
}

.contact3 .form-control:focus::-webkit-input-placeholder {
	color: transparent;
}
.contact3 p{
	font-size: 1rem;
	color:#244055;
	text-align: left;
	line-height: 1.2;
	
}



@media (max-width: 1450px) {
	.btn-default {
		font-family: 'Roboto', sans-serif;
		font-size: 25px;
		width: 200px;
	
	
	}


	section.page_toplogo {
	        padding: 30px 0;
	}
	section.page_toplogo img {
	    max-width: 250px;
	 
	
	}
	h1 {
		font-size: 2.8rem;
	}

	h2 {
		font-size: 1.6rem;
	}

	h3 {
		font-size: 1.4rem;
	}

	h4 {
		font-size: 1.3rem;
	}

	h5 {
		font-size: 1.2rem;
	}

	h6 {
		font-size: 1.1rem;
	}
}

@media (max-width: 1024px) {
	header {
		padding:10px;
	}
	header.page_toplogo img {
	    max-height: 40px;
	}
	header h1 {
		font-size: 25px;
		font-weight: 300;
		margin: 0 0 10px 0!important;
		text-transform: uppercase;
		width: 100% !important;
		display: inline-block;
		clear: both;
		width: 100%;
		text-align: right !important;
		
	}
	header h2 {
		font-size: 18px;
		font-weight: 300;
		margin: -15px  0 15px 0 !important;
		float: left;
		width: 100%;
		text-align: right !important;
	}
	header h3 {
		font-size: 14px;
		font-weight: 200;
		width: 100%;
		text-align: right !important;
	}	

	
	#home h1 {
		font-size: 34px;
		
	}
	#home h2 {
		font-size: 26px;
	}
	#home h3 {
		font-size: 18px;
	}

	.container h1 {
		font-size: 34px;
		
	}
	.container h2 {
		font-size: 20px;
		text-align: left !important;
		margin-top: 30px;
	}
	.container h3 {
		font-size: 18px;
	}


		
	.btn-default {
		font-size: 16px;
		width: 130px;
		
	
	}

	
	.link{
		margin-top: -25px !important;
		margin-bottom: 20px !important;
	}
	.intro #logo img {
		max-width: 220px;
	}	
	h1 {
		font-size: 1.8rem;
		margin-bottom: 18px !important;
		width: 100%;
		float: left;
	}

	h2 {
		font-size: 1.6rem;
	}

	h3 {
		font-size: 1.4rem;
	}

	h4 {
		font-size: 1.1rem;
	}

	h5 {
		font-size: 1rem;
	}

	h6 {
		font-size: 0.9rem;
	}
	p {
		font-size: 0.8rem;
		margin: 5px 0 !important;
	}

}
@media (max-width: 575px) {
	header.page_toplogo img {
	    max-height: 28px;
	}


	header h1 {
		font-size: 14px;
		font-weight: 300;
		margin: 0 0 10px 0!important;
		text-transform: uppercase;
		
	}
	header h2 {
		font-size: 14px;
		font-weight: 300;
		margin: -15px  0 15px 0 !important;
		float: left;
		width: 100%;
		text-align: right !important;
	}
	header h3 {
		font-size: 11px;
		font-weight: 200;
		width: 100%;
		text-align: right !important;
	}	

	contact3 input[type="text"],
	.contact3 input[type="email"],
	.contact3 input[type="url"],
	.contact3 input[type="password"],
	.contact3 input[type="search"],
	.contact3 input[type="tel"],
	.contact3 input[type="number"],
	.contact3 input[type="file"],
	.contact3 textarea,
	.contact3 select,
	.contact3 .form-control {
		font-size: 11px;
		font-weight: 600;
		padding: 8px 30px 9px;
	
	}

	.btn-default {
		font-size: 14px;
		width: 110px;
	
	
	}

	.intro #logo img {
		max-width: 300px;
	}	
	h1 {
		font-size: 1.6rem;
		width: 100%;
		float: left;
	}

	h2 {
		font-size: 1.4rem;
	}

	h3 {
		font-size: 1.2rem;
	}

	h4 {
		font-size: 1.1rem;
	}

	h5 {
		font-size: 1rem;
	}

	h6 {
		font-size: 0.9rem;
	}
	p {
		font-size: 0.8rem;
		margin: 5px 0 !important;
	}

}

