/* CSS Document */
/* undohtml.css */
/* (CC) 2004 Tantek Celik. Some Rights Reserved.             */
/*   http://creativecommons.org/licenses/by/2.0                   */
/* This style sheet is licensed under a Creative Commons License. */

/* Purpose: undo some of the default styling of common (X)HTML browsers */


/* Paste this css to your style sheet file or under head tag */
/* This only works with JavaScript, 
if it's not present, don't show loader */
.no-js #loader { display: none;  }
.js #loader { display: block; position: absolute; left: 100px; top: 0; }
.se-pre-con {
	position: fixed;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: 9999999;
	background: url(../images/Preloader.gif) center no-repeat #fff;
}

* {
    -webkit-font-smoothing: antialiased;
    -webkit-text-size-adjust: none;
}

/* link underlines tend to make hypertext less readable, 
   because underlines obscure the shapes of the lower halves of words */
:link, :visited  {
	text-decoration: none
}
/* avoid browser default inconsistent heading font-sizes */
/* and pre/code too */
h1, h2, h3, h4, h5, h6, pre, code {
	font-size: 1em;
}
/* remove the inconsistent (among browsers) default ul,ol padding or margin  */
/* the default spacing on headings does not match nor align with 
   normal interline spacing at all, so let's get rid of it. */
/* zero out the spacing around pre, form, body, html, p, blockquote as well */
/* form elements are oddly inconsistent, and not quite CSS emulatable. */
/*  nonetheless strip their margin and padding as well */
h1, h2, h3, h4, h5, h6, pre, form, body, html, blockquote, fieldset, input {
	margin: 0;
	padding: 0
}
/* whoever thought blue linked image borders were a good idea? */
a img, :link img, :visited img {
	border: none
}
/* de-italicize address */
address {
	font-style: normal
}
/* more varnish stripping as necessary... */

html { font-size: 62.5%; } 

html p, html li {
	font-family: 'NeutrifPro-Regular', sans-serif;
    font-size: 1.6rem;
    line-height:2.6rem;
    text-transform: none;
	letter-spacing: 0;
}

body {
	margin: 0 5%;
	color: #FFF;
	font-family: 'NeutrifPro-Regular', sans-serif;
	font-size: 1.6rem;
    line-height:2.6rem;
	background-color: #000000;
}


strong{
	font-family: 'NeutrifPro-Semibold', sans-serif;
}

a {
	color:#000;
	text-decoration: none;
	margin: 0;
	transition: all 0.3s ease-in-out 0s;
	transition-duration: 0.2s;
}

a:hover {
	color: #64C8C8;
	text-decoration: none;
}

.asterisk{
	color: #FF0004;
	text-decoration: none;
	float: left;
}

h1,h2,h3,h4,h5,h6{
	font-family: 'NeutrifPro-Medium', sans-serif;
	line-height: 1.2em;
	padding:0 0 1% 0;
}

h1 {
	display:block;
	font-size:3.8rem;
}

h2 {
	font-size:2.4rem;
}

h3 {
	font-size:2.1rem;
}

h4{
	display:block;
	font-size: 1.8rem;
	}

h5{
	display:block;
	font-size:1.6rem;
	}


.ombrage{
	box-shadow: 5px 5px 15px 0 rgba(0,0,0,0.2) !important;
}

.rond {
  border-radius: 50%;
	max-width: 70%;
	height: auto;
	display: block;
	display: flex;
	align-content: center;
}



.centre {
	text-align: center;
}

.imgFull {
	max-width: 100%;
	height: auto;
	display: block;
}

.imgEgal {
    width: 100%;
	max-height: 45vh;
	min-height: 25vh;
    object-fit: cover;
	overflow: hidden;
}

.object-fit_cover { 
	width: 100%;
	max-height: 50vh;
	min-height: 50vh;
	display: block;
	object-fit: cover;
}

.imgLeft {
	max-width: 350px;
	height: auto;
	display: block;
	float: left;
	margin: 0 30px 0 0;
}

.imgRight {
	max-width: 150px;
	height: auto;
	display: block;
	float: right;
	margin: 0 0 0 30px;
}



button, hr, input {
    overflow: visible;
}
button, input, select, textarea {
    font: inherit;
    margin: 0;
}

.input {
	padding: 8px;
	display: block;
	border: none;
	border-bottom: 1px solid #ccc;
	width:90%;
	margin: 20px 0;
}

select {
	padding: 8px;
	display: block;
	border:1px solid #FFF;
	border-bottom: 1px solid #000;
	width:90%;
}

textarea {
	width:90%;
	padding: 8px;
	display: block;
	border: 1px solid #ccc
}



.bouton {
    border: none;
    display: inline-block;
    outline: 0;
    padding: 15px;
    vertical-align: middle;
    overflow: hidden;
    text-decoration: none;
    color: #FFF;
    background-color: #64C8C8;
    text-align: center;
    cursor: pointer;
    white-space: nowrap;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
	border-radius: 5px;
}

.border-left{
 border-left: #D4D4D4 solid 1px;
	}
.border-right{
 border-right: #D4D4D4 solid 1px;
	}
.border-top{
 border-top: #D4D4D4 solid 1px;
	}
.border-bottom{
 border-bottom: #D4D4D4 solid 1px;
	}


.cap {
	text-transform: uppercase;
}



/*____________________________Colonne Responsive_________________________________*/


.container {
	
}
.bar:after, .bar:before, .cell-row:after, .cell-row:before, .clear:after, .clear:before, .container:after, .container:before, .panel:after, .panel:before, .row-padding:after, .row-padding:before, .row:after, .row:before {
	content: "";
	display: table;
	clear: both
}
.col {
	float: left;
	width: 100%
}
.col.s1 {
	width: 8.33333%
}
.col.s2 {
	width: 16.66666%
}
.col.s3 {
	width: 24.99999%
}
.col.s4 {
	width: 33.33333%
}
.col.s5 {
	width: 41.66666%
}
.col.s6 {
	width: 49.99999%
}
.col.s7 {
	width: 58.33333%
}
.col.s8 {
	width: 66.66666%
}
.col.s9 {
	width: 74.99999%
}
.col.s10 {
	width: 83.33333%
}
.col.s11 {
	width: 91.66666%
}
.col.s12 {
	width: 99.99999%
}

@media (min-width:601px) {
.col.m1 {
	width: 8.33333%
}
.col.m2 {
	width: 16.66666%
}
.col.m3, .quarter {
	width: 24.99999%
}
.col.m4, .third {
	width: 33.33333%
}
.col.m5 {
	width: 41.66666%
}
.col.m6, .half {
	width: 49.99999%
}
.col.m7 {
	width: 58.33333%
}
.col.m8, .twothird {
	width: 66.66666%
}
.col.m9, .threequarter {
	width: 74.99999%
}
.col.m10 {
	width: 83.33333%
}
.col.m11 {
	width: 91.66666%
}
.col.m12 {
	width: 99.99999%
}
	
}

@media (min-width:993px) {
.col.l1 {
	width: 8.33333%
}
.col.l2 {
	width: 16.66666%
}
.col.l3 {
	width: 24.99999%
}
.col.l4 {
	width: 33.33333%
}
.col.l5 {
	width: 41.66666%
}
.col.l6 {
	width: 49.99999%
}
.col.l7 {
	width: 58.33333%
}
.col.l8 {
	width: 66.66666%
}
.col.l9 {
	width: 74.99999%
}
.col.l10 {
	width: 83.33333%
}
.col.l11 {
	width: 91.66666%
}
.col.l12 {
	width: 99.99999%
}

}


/*____________________________Colonne Responsive Box_________________________________*/


/* Boite nouvelle accueil*/

.col-container {
  display: table;
	width:100%;
}



.colbox {
	display: inline-block;
	vertical-align: top;
	float:left:
}
.colbox.s1 {
	width: 8.33333%;
}
.colbox.s2 {
	width: 16.66666%;
}
.colbox.s3 {
	width: 24.99999%;
}
.colbox.s4 {
	width: 33.33333%;
}
.colbox.s5 {
	width: 41.66666%;
}
.colbox.s6 {
	width: 49.99999%;
}
.colbox.s7 {
	width: 58.33333%;
}
.colbox.s8 {
	width: 66.66666%;
}
.colbox.s9 {
	width: 74.99999%;
}
.colbox.s10 {
	width: 83.33333%;
}
.colbox.s11 {
	width: 91.66666%;
}
.colbox.s12 {
	width: 100%;
}

@media (min-width:601px) {
	
.colbox {
	display: table-cell;
	vertical-align: top;
}
	
.colbox.m1 {
	width: 8.33333%;
}
.colbox.m2 {
	width: 16.66666%;
}
.colbox.m3 {
	width: 24.99999%;
}
.colbox.m4 {
	width: 33.33333%;
}
.colbox.m5 {
	width: 41.66666%;
}
.colbox.m6 {
	width: 49.99999%;
}
.colbox.m7 {
	width: 58.33333%;
}
.colbox.m8 {
	width: 66.66666%;
}
.colbox.m9 {
	width: 74.99999%;
}
.colbox.m10 {
	width: 83.33333%;
}
.colbox.m11 {
	width: 91.66666%;
}
.colbox.m12 {
	width: 99.99999%;
}
	
}

@media (min-width:993px) {
.colbox.l1 {
	width: 8.33333%;
}
.colbox.l2 {
	width: 16.66666%;
}
.colbox.l3 {
	width: 24.99999%;
}
.colbox.l4 {
	width: 33.33333%;
}
.colbox.l5 {
	width: 41.66666%;
}
.colbox.l6 {
	width: 49.99999%;
}
.colbox.l7 {
	width: 58.33333%;
}
.colbox.l8 {
	width: 66.66666%;
}
.colbox.l9 {
	width: 74.99999%;
}
.colbox.l10 {
	width: 83.33333%;
}
.colbox.l11 {
	width: 91.66666%;
}
.colbox.l12 {
	width: 99.99999%;
}

}



/* Container for flexboxes */

.grid {
	font-size: 1.3rem;
	font-weight: 700;
}


.col-row {
  display: flex;
  flex-wrap: wrap;
}

/* Create four equal columns */
.col-column {
  width: 24.9%;
display:flexbox;
}

/* On screens that are 992px wide or less, go from four columns to two columns */
@media screen and (max-width: 992px) {
  .col-column {
    flex: 48.8%;
	
  }
}

/* On screens that are 600px wide or less, make the columns stack on top of each other instead of next to each other */
@media screen and (max-width: 600px) {
  .col-column {
    flex: 99%;
  }
}



.margin {
	margin: 16px!important
}
.margin-left {
	margin-left: 16px!important
}
.margin-right {
	margin-right: 16px!important
}

.padding-8 {
	padding: 8px!important
}

.padding-16 {
	padding: 16px!important
}
.padding-24 {
	padding: 24px!important
}
.padding-32 {
	padding: 32px!important
}
.padding-48 {
	padding: 48px!important
}

.padding-64 {
	padding: 64px!important;
}

.padding-20 {
	padding: 20%!important;
}


.padding-top-36{
	/*padding-top: 50px!important;*/
}


@media (max-width:992px) {
.padding-32 {
	padding: 16px!important
}
.padding-48, .padding-64 {
	padding: 24px!important
}
	
	.padding-top-36{
	padding-top: 30px!important;
}

}









/*_________________________________sections de couleurs _______________________________*/

.main, .section1, .section2, .section3, .section4, .section5, .section6, .section7, #menu {
	max-width:1200px;
	margin: 0 auto;
	}

.main {
	width: 90%;
	padding: 0 5% 0 5%;
	position: relative;
	z-index: 997;
	}

.section1 {
	width: 90%;
	padding: 3% 5%; 
	z-index: 999;
	position: relative;
}


.cadre p {
    font-size:1.3rem;
	line-height: 2.1rem;
}

.grille {
font-size:1.3rem;
	line-height: 2.1rem;
	font-weight:700;
	padding: 3% 0 6% 0;
}

.grille .colbox {
	display: inline-block;
}

.section2 {
	width: 90%;
	padding: 0 5%; 
	z-index: 999;
	position: relative;
}


.section3 {
	width: 90%;
	padding: 3% 5%; 
	z-index: 999;
	position: relative;
}


.section4  {
	width: 90%;
	padding: 5%; 
	z-index: 999;
	position: relative;
	color:#000;
}

.ligne {
	background: url("../images/bg-ligne.jpg");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center right;
	}

.ligne2 {
	background: url("../images/bg-ligne2.jpg");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center right;
	}


.sub {
	/*background-image: url("../images/back-article.jpg");*/
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	color:#FFF;
	font-size:3.2rem;
	font-weight: bold;
	}

.services {
	width: 25%; 
	height: 25%; 
	position: absolute; 
	right: 0;
	bottom: 0;
	padding: 5%;
	z-index: 998;
}


.border-cta {
	border-right:15px solid white;
}





.section5 {
	width: 90%;
	padding: 0 0 0 10%;
}



.section6 {
	width: 100%;
	padding: 0;
}

.section7 {
	width: 80%;
	padding: 2% 10%;

}

.section8 {
	width: 50%;
	padding: 5% 25%;
 	background-color:#64C8C8;
	color:#FFF;
	text-align: center;
}

.section9 {
	width: 80%;
	padding: 5% 10%;
 	background-color:#FFF;
	text-align: center;
	
}
/*_________________________________page accueil _______________________________*/



.marginNeg {
	margin-top: -100px;
	z-index: 99;
	position: relative;
}

.marginNegPage {
	margin-top: -100px;
	z-index: 99;
	position: relative;
	}

.marginNegRight {
	margin: -100px 0 0 -30px;
	z-index: 98;
	position: relative;
	}

 .separateur {
	 height: 4px;
	 margin: 0 0 20px 0;
	 max-width: 300px
}





/* ------------------------- MENU _________________________________________ */





#menu {
	background-color:#FFF;
	padding: 0 5%;
	transition: 0.4s;
	width: 90%;
	top: 0;
	z-index: 9999;
	height: 150px;
}


.logo {
	max-width: 100%;
	height: auto;
	padding: 50px 0 0 0;
}

#logos {
	float: left;
    margin: 0;
    display: inline-block;
	z-index: 99999999;
	width: 270px;
	transition: 0.4s;
	position: relative;
}

.sous-menu{
	text-align: right;
	font-size: 1.1rem;
	/*background-color:#333333;*/
	padding: 10px 2% 0 4%;
	width: 94%;
	color:#FFF;
	}


.sous-menu a {
	color:#000;
	padding:8px 35px 8px 10px;
	}

.sous-menu a:hover {
	color:#64C8C8;
	}

.menu{
	display:inline-block;
	float: right;
	position: relative;
	z-index: 999999;
	}
	
.menu a{
	display:inline-block;
	text-decoration:none;
	}


	
.menu ul {
 	padding:0;
	margin:0;
 }
 
.menu ul li {
	margin-left: 2px;
	float: left; /*pour IE*/
	list-style-type: none;
	list-style-image: none;
	display: inline;
	position: relative;
	z-index:998;
	padding:8px 0;
 }

.menu ul li a {
	display: block;
	float: left;
	width: auto;
	color:#272727;
	text-decoration:none;
	font-weight:500;
	padding:15px 30px;
	font-size: 1.6rem;
 }

.last {
	border-right: none!important;
	
 }

.menu ul li a:hover {
	color:#64C8C8;
	transition: background-color 0s ease 0s;
	text-decoration:none;
 } 
 
 .menu ul li ul li{
	padding:0px;
 }
 
 
 .menu ul li ul li a {
	display: block;
	float: left;
	width: 200px;
	text-decoration: none;
	text-align: left;
	border-left: none;
	border-top: 1px solid #262626;
	text-transform: normal;
	color:#FFF;
	text-transform:none;
	letter-spacing:0px;
	padding:10px 10px !important;
	font-weight:300;
	 font-size: 1.4rem;
	 line-height: normal;
 }
 
 .menu ul li ul li a:hover {
	color: #FFF;
	background: #64C8C8;

 } 
 
 .menu ul ul {
		position: absolute;
		left: 0;
		top: 100%;
		background: #000;
		display: none;
		z-index:9999;
	
	}
	
 .menu ul ul ul {
		top: 5px;
		left:100%;
		background: #999;
		z-index:9999;

	}

	
li:hover > ul {
		display: block;
	}




#propos .propos  {
  border-bottom: 3px solid #64C8C8;
}

#servi .servi  {
  border-bottom: 3px solid #64C8C8;
}

#article .article  {
  border-bottom: 3px solid #64C8C8;
}


#contact .contact  {
  border-bottom: 3px solid #64C8C8;
}


/*____________________________________realisatoin*/

#my-gallery a {
	padding:5px;
	}

/*____________________________________Slider accueil*/




.btn_savoir{
	margin: 2% 4% 2% 0;
	padding: 5px 25px;	
	transition: all 0.3s ease-in-out 0s;
	transition-duration: 0.2s;
	max-width: 500px;
	font-size: 13px;
	line-height: 24px;
	display: inline-block;
	 border-radius: 25px;
	font-weight: bold;
}
	}


/*.btn_savoir:after{
    content: ' →';
	}*/

.btn_savoir:hover, .btn_linkedIn:hover {
	background-color:#64C8C8;
	color:#FFF;
	transition: all 0.3s ease-in-out 0s;
	transition-duration: 0.2s;
	}


.btn_linkedIn{
	margin: 2% 4% 2% 0;
	padding: 5px 25px 7px 25px;;	
	transition: all 0.3s ease-in-out 0s;
	transition-duration: 0.2s;
	max-width: 500px;
	font-size: 13px;
	line-height: 24px;
	display: inline-block;
	 border-radius: 25px;
	}


.btn_linkedIn:after{
	font-family: Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	padding:0 0 0 20px;
    content: ' →';
	}


.textBlanc{
	color: #FFFFFF;
	}

.textNoir{
	color: #000;
	}

.textRouge{
	color:#FC0032;
	}

.textBleu{
	color:#273750;
	}

.Rouge{
	background-color:#FC0032;
	color: #FFFFFF;
	}

.Bleu{
	background-color:#f0f7f8;
	}

.BleuFonce{	
	background-color:#062f5c;
	color: #FFFFFF;
	}

.Jaune{
	background-color:#e09133;
	color: #FFFFFF;
	}

.Gris{
	background-color:#231f20;
	color: #FFFFFF;
	}

.GrisPale{
	background-color:#F3FBF7;
	color:#000;
	}


.Blanc{
	background-color:#FFF;
	color:#040505;
	}

.Noir{
	background-color:#000;
	color:#FFF;
	}

/*___________Table responsive__________________*/

.tableauResp{
	overflow-x:auto;
	border: 1px solid #DFDFDF;
	margin-top:20px;
}

table {
    border-collapse: collapse;
    width: 100%;
	line-height: normal;
}

th, td {
   /* text-align: left;*/
    padding: 10px;
}

tr:nth-child(even){background-color: #FFF}

th {
    background-color: #0d3b70;
    color: white;
	padding: 10px;
	font-size:2.1rem;

}

/*___________footer__________________*/

.footer{
	width: 90%;
	padding: 2% 5%;
	font-size: 1.1rem;
	line-height: 1.4rem;
	margin: 0 auto;
	max-width: 1200px;
	
}


.footer a{
	color: #272727;
	font-weight: 400;
	}

.footer a:hover{
	color: #64C8C8;
	}






/* ----------------------------------------------------------  parallax accueil*/




.slogan_slider{
  position: absolute;
  display: block;
  text-align: left;
  margin: 0;	
  padding: 7%;
  color:#333;
	top: 15%;
	left:5%;
	letter-spacing: 0;
}




.slogan_soustitre {
	font-size: 14px;
	line-height: 18px;
	font-weight: 700;
	max-width: 500px;
	text-transform: uppercase;
	}

.slogan_titre {
	font-size: 48px;
	line-height: 48px;
	font-weight: 600;
	max-width: 500px;
	margin: 30px 0;	
	color: #ffffff;
	text-transform: uppercase;
	/*font-family: 'Source Serif Pro', serif;*/
}





/* ----------------------------------------------------------  search box*/




.slider a{
  color:inherit;
}

.slider a:hover{
  opacity: 0.9;
	color:#64C8C8;
}

.slider h4{
 padding: 20px 0 0 0;
	font-weight:400;
}


    .slick-prev:before,
    .slick-next:before {
      color: white;
		background: #BFD2D8;
		padding: 0 10px;
    }


    .slick-slide {
      transition: all ease-in-out .3s;
      opacity: .2;
    }
    
    .slick-active {
      opacity: 1;
    }

    .slick-current {
      opacity: 1;
    }



