@font-face {
	font-family: 'Roboto Flex';
	src: url('../fonts/Roboto_Flex/RobotoFlex-VariableFont_GRAD,XOPQ,XTRA,YOPQ,YTAS,YTDE,YTFI,YTLC,YTUC,opsz,slnt,wdth,wght.ttf') format('truetype');
  }

:root{
	--red-primary: rgb(218, 0, 27); /* #da001b */
	--blue-primary: rgb(0, 41, 71); /* #002947 */
	--blue-primary-rgb: 0, 41, 71;
}

body {
	width: 100%;
	overflow-x:hidden  ;
	font-family:'Roboto', sans-serif;
	font-weight:300;
}



.red{ color:var(--red-primary);}
.blue{ color:var(--blue-primary);}
.blue a:hover{ text-decoration:none;}

.solutions { font-size:1em;}
.chiffres{ text-transform:uppercase; font-size:40px; font-weight:700; color:var(--red-primary); font-family:Dosis,"Helvetica Neue";}

.lowercase{
	text-transform: lowercase;
}

.nav-logo{
	width: 50%;
	height: auto;
}

@media screen and (max-width: 410px){
	.nav-logo{
		width: 50%;
		margin-top: -1.5em;
		margin-left: 0.5em;
	}
}

.text-muted {
 color:#777
}

.text-primary {
 color:var(--red-primary)
}

p {
 font-size:1.3em ;
 line-height:1.75;
 color:var(--blue-primary);
}

.white{
	color:white;
	}
.white a{color:white;}
.white a:hover{color:var(--red-primary); text-decoration:none;}


p.large {
 font-size:16px
}

a,a:hover,a:focus,a:active,a.active {
 outline:0
}

a {
 color:var(--red-primary)
}

a:hover,a:focus,a:active,a.active {
 color:var(--red-primary)
}

h1,h2,h3,h4,h5,h6 {
 font-family:Dosis,"Helvetica Neue",Helvetica,Arial,sans-serif ;
 text-transform:uppercase ;
 font-weight:700;
 color:var(--blue-primary);
}

.sous-titre h3{
 font-family:Dosis,"Helvetica Neue",Helvetica,Arial,sans-serif ;
 font-weight:700;
 color:var(--red-primary);
	}

hr{ border-style:solid;  border-color:#eee; border-width:2px;}

.portfolio-caption h4{ color:var(--blue-primary);}

.legende{ font-size:14px;;}

.img-centered {
 margin:0 auto
}

.bg-light-gray {
 background-color:#f7f7f7
}

.bg-gray{ background-color:#eee;}

.bg-darkest-gray {
 background-color:#222
}

.btn-primary {
 color:#fff ;
 background-color:var(--red-primary) ;
 border-color:var(--red-primary) ;
 font-family:Dosis,"Helvetica Neue",Helvetica,Arial,sans-serif ;
 text-transform:uppercase ;
 font-weight:700
}

.close-btn-modal{
	margin-top: 2em;
}

.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary {
 color:#fff ;
 background-color:var(--red-primary) ;
 border-color:var(--red-primary)
}

.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary {
 background-image:none
}

.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active {
 background-color:var(--red-primary) ;
 border-color:var(--red-primary)
}

.btn-primary .badge {
 color:var(--red-primary) ;
 background-color:#fff
}

.block-btn-header{
	display: flex;
	justify-content: center;
}

.btn-xl {
 color:#fff;
 font-family:Roboto,"Helvetica Neue",Helvetica,Arial,sans-serif ;
 text-transform:uppercase ;
 font-weight:500 ;
 border-radius:10px ;
 font-size:1em ;
 padding:15px 0px;
 margin: 0em 2em 0em 2em;
 width: 19em;
 height: 3.6em;
}

.btn-offers{
	color: rgba(233, 233, 233, 1);
	background: linear-gradient(268.15deg, #DA0000 -8.84%, rgba(218, 0, 0, 0) 79.97%), #400F61;;;
	filter: drop-shadow(4px 4px 9px rgba(0, 212, 255, 0.25));
	border: 1em #fff;
}

.btn-contact{
	color: rgba(255, 255, 255, 0.7);
	background: #444444 ;
}

.btn-submit{
	background: #DA0001;
}

.btn-contact:hover,.btn-contact:focus,.btn-contact:active,.btn-contact.active,.open .dropdown-toggle.btn-contact {
	color:#fff ;
	background-color: #444444 ;
   }

.btn-offers:hover,.btn-offers:focus,.btn-offers:active,.btn-offers.active,.open .dropdown-toggle.btn-offers {
 color:#fff ;
 background-color: linear-gradient(270deg, #DA0000 6.77%, rgba(218, 0, 0, 0) 95.72%), #833AB4;
}

@media  screen and (max-width: 721px) {
	.block-btn-header{
		display: block;
		text-align: center;
	}
}

.btn-xl:active,.btn-xl.active,.open .dropdown-toggle.btn-xl {
 background-image:none
}

.btn-xl.disabled,.btn-xl[disabled],fieldset[disabled] .btn-xl,.btn-xl.disabled:hover,.btn-xl[disabled]:hover,fieldset[disabled] .btn-xl:hover,.btn-xl.disabled:focus,.btn-xl[disabled]:focus,fieldset[disabled] .btn-xl:focus,.btn-xl.disabled:active,.btn-xl[disabled]:active,fieldset[disabled] .btn-xl:active,.btn-xl.disabled.active,.btn-xl[disabled].active,fieldset[disabled] .btn-xl.active {
 background-color:var(--red-primary) ;
 border-color:var(--red-primary)
}

.btn-xl .badge {
 color:var(--red-primary) ;
 background-color:#fff
}

.change-language{
	position: relative;
	left: 72%;
	margin-top: 0.5em;
	padding: 0;
	z-index: -1;
	cursor: pointer;
}

@media screen and (max-width: 1340px) {
	.change-language{
		top: -0.5em;
		left: 0;
		z-index: 0;
	}
}
@media screen and (min-width: 1026px) and (max-width: 1340px) {
	.change-language{
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		top: 8em;
		left: 53em;
	}
}

.icon{
	padding: 0;
	margin: 0;
	width: 2em;
	margin: 0.3em;
	cursor: pointer;
}

.navbar-default {
 background-color:white ;
 border-color:transparent
}

#page-top > nav > div > div.navbar-header.page-scroll > a{
	padding:0;
}

.navbar-default .navbar-brand {
 color:var(--red-primary) ;
 font-family:"Kaushan Script","Helvetica Neue",Helvetica,Arial,cursive
}

.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus,.navbar-default .navbar-brand:active,.navbar-default .navbar-brand.active {
 color:var(--red-primary)
}

.navbar-default .navbar-collapse {
 border-color:rgba(255,255,255,.02)
}

.navbar-default .navbar-toggle {
 background-color:var(--red-primary) ;
 border-color:var(--red-primary)
}

.navbar-default .navbar-toggle .icon-bar {
 background-color:#fff
}

.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus {
 background-color:var(--red-primary)
}

.navbar-default .nav li a {
 font-family:Dosis,"Helvetica Neue",Helvetica,Arial,sans-serif ;
 text-transform:uppercase ;
 font-weight:400 ;
 letter-spacing:1px ;
 color:var(--blue-primary);
}

.navbar-default .nav li a:hover,.navbar-default .nav li a:focus {
 color:var(--red-primary) ;
 outline:0
}

.navbar-default .navbar-nav>.active>a {
 border-radius:0 ;
 color:#fff ;
 background-color:var(--red-primary)
}

.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus {
 color:#fff ;
 background-color:var(--red-primary)
}

@media (min-width:140px) {
 .navbar-default {
 background-color:white ;
 padding:25px 0 ;
 -webkit-transition:padding .3s ;
 -moz-transition:padding .3s ;
 transition:padding .3s ;
 border:0
}

.navbar-default .navbar-brand {
 font-size:2em ;
 -webkit-transition:all .3s ;
 -moz-transition:all .3s ;
 transition:all .3s
}

.navbar-default .navbar-nav>.active>a {
 border-radius:3px
}

.navbar-default.navbar-shrink {
 background-color:white ;
 padding:10px 0
}

.navbar-default.navbar-shrink .navbar-brand {
 font-size:1.5em
}
}


/* .navbar {
	background-color: white;
	display: flex;
	justify-content: space-between;
	padding: 16px;
	font-family: sans-serif;
	color: var(--blue-primary);
	width: 100%;
	padding: 25px 0;
	transition: padding .3s;
	border: 0;
	height: 6em;
  }
  
  .navbar-fixed-top{
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 1030;
  }
  
  .navbar-brand {
	padding-left: 2em;
	margin-top: -1em;
  }
  
  .navbar__link {
	padding-right: 8px;
  }
  
  .navbar__items ul {
	display: flex;
	margin-top: 0.5em;
  }
  
  .navbar__items ul li {
	display: flex;
	text-decoration: none;
	text-decoration-line: none;
	margin-right: 1em;
  }
  
  .navbar__items ul li a {
	font-family: Dosis, "Helvetica Neue", Helvetica, Arial, sans-serif;
	text-transform: uppercase;
	font-weight: 400;
	letter-spacing: 1px;
	color: var(--blue-primary);
	text-decoration-line: none;
	cursor: pointer;
  }
  
  .navbar__items {
	display: flex;
  }
  
  .navbar__link-toggle {
	display: none;
  }
  
  #page-top > nav > div > div.navbar-header.page-scroll > a{
	  padding: -1em;
  }
  
  @media only screen and (max-width: 1023px) {
	.navbar__items,
	.navbar {
	  width: 100%;
	  flex-direction: column;
	  justify-content: center;
	}
  
	.navbar-brand{
	  padding: 0 2em;
	}
  
	.navbar__items {
	  display: none;
	}
  
	.navbar__items ul {
	  flex-direction: column;
	  padding-left: 2em;
	}
  
	.navbar__items ul li {
	  margin-bottom: 1em;
	}
  
	.navbar__toggleShow {
	  display: flex;
	  background-color: white;
	  margin-top: 24em;
	}
  
	.navbar__link-toggle {
	  align-self: flex-end;
	  display: initial;
	  position: absolute;
	  top: 1em;
	  cursor: pointer;
	  background-color: var(--red-primary);
	  border-color: var(--red-primary);
	  padding: 9px 10px;
	  margin: 8px 2em 8px 0;
	  background-image: none;
	  border: 1px solid transparent;
	  border-radius: 4px;
	  
	}
  
	.navbar__link-toggle .fa-bars{
	  color: white;
	}
  
	.change-language {
	  padding-left:2em;
	}

	.nav-logo{
		width: 20%;
	}
  } */
  

header {
	background-image:url(../img/header/dem.jpg);
	background-repeat: no-repeat ;
	background-attachment:scroll ;
	background-position:center center ;
	-webkit-background-size:cover ;
	-moz-background-size:cover ;
	background-size: cover;
	-o-background-size:cover ;
}



/* header .intro-text {
 padding-top:100px ;
 padding-bottom:50px
} */

header .intro-text .intro-lead-in {
 font-family:Dosis,"Helvetica Neue",Helvetica,Arial,sans-serif ;
 font-style:italic ;
 font-size:22px ;
 line-height:22px ;
 margin-bottom:25px;
 margin-top: 150px;
}

header .intro-text .intro-heading {
 font-family:Dosis,"Helvetica Neue",Helvetica,Arial,sans-serif ;
 text-transform:uppercase ;
 font-weight:700 ;
 font-size:50px ;
 line-height:50px ;
 margin-bottom:25px;
 margin-top: 100px;
}

header .intro-text .intro-heading h2 {
	font-family: Dosis,"Helvetica Neue",Helvetica,Arial,sans-serif ;
	margin-top: 100px;
	font-size: 1em;
}

header .intro-text a{
	margin-top: 50px;
}

.block-icon-header{
	display: flex;
	justify-content: center;
	margin-top: 3em;
}

.icon-header{
	width: 86px;
	height: 86px;
	margin: 0em 1em 0em 1em;
}

.plus{
	margin-top: 2em;
	width: 26px;
	height: 26px;
}

@media  screen and (max-width: 721px) {
	.icon-header{
		width: 36px;
		height: 46px;
		margin: 0em 1em 0em 1em;
	}
	
	.plus{
		margin-top: 1em;
		width: 16px;
		height: 16px;
	}
}

.block-icon-rs{
	display: flex;
	justify-content: flex-end;
}

.rs{
	color: #FFFF;
	font-size: 2em;
	margin: 0em 0.5em 0em 0.5em;
}

@media screen and (max-width: 721px){
	.block-icon-rs{
		height: 0em;
	}
}

@media screen and (min-width:722px) and (max-width: 1024px){
	.block-icon-rs{
		height: 0em;
	}
}


/* .intro-lead-in img{
	max-width:100%;
	height:auto;
	} */
	

@media (min-width:768px) {
	
header {
	background-image:url(../img/header/dem.jpg) ;
}

}

 header .intro-text {
 padding-top:150px ;
 padding-bottom:150px
}

header .intro-text .intro-lead-in {
 font-family:Dosis,"Helvetica Neue",Helvetica,Arial,sans-serif ;
 font-style:italic ;
 font-size:40px ;
 line-height:40px ;
 margin-bottom:25px
}

header .intro-text .intro-heading {
 font-family:Dosis,"Helvetica Neue",Helvetica,Arial,sans-serif ;
 text-transform:uppercase ;
 font-weight:700 ;
 font-size:75px ;
 line-height:75px ;
 margin-bottom:50px
}

header .intro-text .intro-heading h2{
	color: #fff;
	font-weight: 400;
	font-size: 0.4em;
}


section {
 padding:80px 0
}

section h2.section-heading {
 font-size:40px ;
 margin-top:0 ;
 margin-bottom:15px;
 color:var(--blue-primary);
}

section h3.section-subheading {
 font-size:16px ;
 font-family:'Roboto', sans-serif;
 text-transform:none ;
 font-style:italic ;
 font-weight:300 ;
 margin-bottom:50px
}

section p.section-subheading-p{
	margin-bottom: 75px;
}

@media (min-width:768px) {
 section {
 padding:80px 0
}
}

.service-heading {
 margin:15px 0 ;
 text-transform:none
}

.msd-li{
	font-size: 1.3em;
}

/* NOTRE TECHNOLOGIE */

.technologie-box{
	display: block;
}

.text-technologie{
	float: left;
	width: 40%;
}

.image-technologie{
	width: 50%;
	float: right;
	border-radius: 5px;
}

@media screen and (max-width: 768px){
	.technologie-box{
		display: block;
	}

	.text-technologie{
		float: none;
		width: 80%;
		margin: 1em 2.5em;
	}

	.image-technologie{
		float: none;
		width: 90%;
		margin: 2em 1.5em;
	}
}


.carousel-inner-limite{
	height: auto;
}

.carousel-inner-limite img{
	width: 100%;
	height: 100%;

}


/* PORTFOLIO --------------------------------------------
---------------------------------------------------------
--------------------------------------------------------*/

#portfolio .row {
 display: flex;
 flex-direction: row;
 justify-content: space-evenly;
 /* width: 100%; */
}

#portfolio .row .portfolio-item {
	width: 100%;
	margin: 0 1em;
}

@media screen and (max-width: 768px){
	#portfolio .row {
		display: block;
	}
	
	#portfolio .row .portfolio-item {
		width: 100%;
		margin: 1em auto;
	}
}
	
#portfolio .portfolio-item {
 margin:0 0 15px ;
 right:0
}

#portfolio .portfolio-item .portfolio-link {
 display:block ;
 position:relative ;
 max-width:400px ;
 margin:0 auto
}

#portfolio .portfolio-item .portfolio-link .portfolio-hover {
 background:rgba(18,41,72,.9) ;
 position:absolute ;
 width:100% ;
 height:100% ;
 opacity:0 ;
 transition:all ease .5s ;
 -webkit-transition:all ease .5s ;
 -moz-transition:all ease .5s
}

#portfolio .portfolio-item .portfolio-link .portfolio-hover:hover {
 opacity:1
}

/* hover */
#portfolio .portfolio-item .portfolio-link .portfolio-hover .portfolio-hover-content {
 position:absolute ;
 width:100% ;
 height:20px ;
 font-size:20px ;
 text-align:center;
 top:50% ;
 margin-top:-12px ;
 color:#fff
}

#portfolio .portfolio-item .portfolio-link .portfolio-hover .portfolio-hover-content i {
 margin-top:-12px
}

#portfolio .portfolio-item .portfolio-link .portfolio-hover .portfolio-hover-content h3,#portfolio .portfolio-item .portfolio-link .portfolio-hover .portfolio-hover-content h4 {
 margin:0
}

#portfolio .portfolio-item .portfolio-caption {
 max-width:400px ;
 margin:0 auto ;
 background-color:#fff ;
 text-align:center;
 padding:25px
}

#portfolio .portfolio-item .portfolio-caption h4 {
 text-transform:none ;
 margin:0
}

#portfolio .portfolio-item .portfolio-caption p {
 font-family:'Roboto', sans-serif;
 font-style:italic ;
 font-size: 1em ;
 margin:0
}

#portfolio * {
 z-index:2
}

@media (min-width:767px) {
 #portfolio .portfolio-item {
 margin:0 0 30px
}


}

.produits{ font-weight:normal; font-size:14px;}
h2 .produits{ font-weight:normal; font-size:20px;}

.left { text-align:justify;}
.left p{ text-align:left;}
.left h2{ text-align:left;}

.logo-modal{
	width:6em;
	height: auto;
}

@media screen and (max-width: 738px){
	.logo-modal{
		width: 5em;
	}
}

.img-position{
	object-position: 0% 20%;
}
	

/* LES TMS BOUTONS --------------------------------------
---------------------------------------------------------
--------------------------------------------------------*/
.trame{
	background-image:url(../img/header/trame2.png);
 	background-repeat:repeat ;
}

#tms .tms-item {
 margin:0 0 15px ;
 right:0;

}

#tms .tms-item .tms-link {
 display:block ;
 position:relative ;
 max-width:400px ;
 margin:0 auto
}


#tms .tms-item .tms-link .tms-hover {
 background:rgba(18,41,72,.9) ;
 position:absolute ;
 width:100% ;
 height:100% ;
 opacity:0 ;
 transition:all ease .5s ;
 -webkit-transition:all ease .5s ;
 -moz-transition:all ease .5s
}

#tms .tms-item .tms-link .tms-hover:hover {
 opacity:1
}

#tms .tms-item .tms-link .tms-hover .tms-hover-content {
 position:absolute ;
 width:100% ;
 height:20px ;
 font-size:20px ;
 text-align:center ;
 top:50% ;
 margin-top:-12px ;
 color:#fff
}

#tms .tms-item .tms-link .tms-hover .tms-hover-content i {
 margin-top:-12px
}

#tms .tms-item .tms-link .tms-hover .tms-hover-content h3,#tms .tms-item .tms-link .tms-hover .tms-hover-content h4 {
 margin:0
}

#tms .tms-item .tms-caption {
 max-width:400px ;
 margin:0 auto ;
 background-color:var(--blue-primary) ;
 text-align:center ;
 padding:25px;
}

#tms .tms-item .tms-caption h4 {
 text-transform:none ;
 margin:0;
 color:#fff;
}

#tms .tms-item .tms-caption p {
 font-family:Dosis,"Helvetica Neue",Helvetica,Arial,sans-serif ;
 font-style:italic ;
 font-size:16px ;
 margin:0
}

#tms * {
 z-index:2
}

@media (min-width:767px) {
 #tms .tms-item {
 margin:0 0 30px
}


}

/* POURQUOI ?---------------------------------------------
---------------------------------------------------------
--------------------------------------------------------*/
.section-tms{
	flex-direction: row;
}

.pourquoi{
	text-align: center;
}

.aps, .tms{
	display: flex;
	justify-content: space-around;
	width: 100%;
	margin-top: 5em;
	align-items: center;
}

.aps-box, .tms-box{
	width: 50%;
}

.aps-title, .tms-title{
	text-align: center;
	font-size: 2em;
}

.tms-box p{
	margin-right: 1em;
}

.tms-p{
	padding: 0 2em 0em 2em;
	margin-bottom: 0em;
}

.last-div{
	margin-bottom: 3em;
}

.aps-box h3, .tms-box h3{
	margin-bottom: 1em;
}

.aps-box p{
	margin-left: 1em;
}

.aps-img{
	object-position: 20% 25%;
}

.aps-img-banderole{
	object-position: 0 30%;
}

.li-aps{
	font-size: 1.3em;
	margin-bottom: 1em;
}

.li-bottom{
	margin-bottom: 2em;
}

.aps-ul{
	font-size: 1.2em;
}
.aps-li{
	margin-bottom: 1em;
	/* line-height: 2em; */
}
.marg-ul{
	padding: 1.5em 2em 0em 4em;
}

.marg-ul-tms{
	padding: 0em 2em 0em 4em;
}

.ref-source{
	font-size: 0.5em;
}

.src-ul{
	list-style-type:decimal;
	font-size: 0.8em;
	font-style: italic;
}

.col-tms{
	margin-left: 0;
	background-color: #e1e5f2;
	padding: 1em 0em 1em 0em;
	border-radius: 10px;
	width: 100%;
}

@media screen and (max-width: 768px){
	.tms{
		display: flex;
		flex-direction: column;
	}

	.tms-box p, .aps-box p{
		margin-left: 0.5em;
		margin-right: 0;
	}

	.aps{
		display: flex;
		flex-direction: column-reverse;
	}

	.aps-box, .tms-box{
		width: 100%;
	}

}


/* TIMELINE ---------------------------------------------
---------------------------------------------------------
--------------------------------------------------------*/

.timeline {
 list-style:none ;
 padding:0 ;
 position:relative
}

.timeline:before {
 top:0 ;
 bottom:0 ;
 position:absolute ;
 content:"" ;
 width:2px ;
 background-color:var(--blue-primary) ;
 left:40px ;
 margin-left:-1.5px
}

.timeline>li {
 margin-bottom:50px ;
 position:relative ;
 min-height:50px
}

.timeline>li:before,.timeline>li:after {
 content:" " ;
 display:table
}

.timeline>li:after {
 clear:both
}

.timeline>li .timeline-panel {
 width:100% ;
 float:right ;
 padding:0 20px 0 100px ;
 position:relative ;
 text-align:left
}

.timeline>li .timeline-panel:before {
 border-left-width:0 ;
 border-right-width:15px ;
 left:-15px ;
 right:auto
}

.timeline>li .timeline-panel:after {
 border-left-width:0 ;
 border-right-width:14px ;
 left:-14px ;
 right:auto
}

.timeline>li .timeline-image {
 left:0 ;
 margin-left:0 ;
 width:80px ;
 height:80px ;
 position:absolute ;
 z-index:100 ;
 background-color:#fff ;
 color:#fff ;
 border-radius:100% ;
 border:7px solid var(--blue-primary) ;
 text-align:center
}

.timeline>li .timeline-image h4 {
 font-size:10px ;
 margin-top:12px ;
 line-height:14px
}

.timeline>li.timeline-inverted>.timeline-panel {
 float:right ;
 text-align:left ;
 padding:0 20px 0 100px
}

.timeline>li.timeline-inverted>.timeline-panel:before {
 border-left-width:0 ;
 border-right-width:15px ;
 left:-15px ;
 right:auto
}

.timeline>li.timeline-inverted>.timeline-panel:after {
 border-left-width:0 ;
 border-right-width:14px ;
 left:-14px ;
 right:auto
}

.timeline>li:last-child {
 margin-bottom:0
}

.timeline .timeline-heading h4 {
 margin-top:0 ;
 color:var(--blue-primary);
}

.timeline .timeline-heading h4.subheading {
 text-transform:none
}

.timeline .timeline-body>p,.timeline .timeline-body>ul {
 margin-bottom:0
}

@media (min-width:768px) {
 .timeline:before {
 left:50%
}

.timeline>li {
 margin-bottom:80px ;
 min-height:100px
}

.timeline>li .timeline-panel {
 width:41% ;
 float:left ;
 padding:0 20px 20px 30px ;
 text-align:right
}

.timeline>li .timeline-image {
 width:100px ;
 height:100px ;
 left:50% ;
 margin-left:-50px
}

.timeline>li .timeline-image h4 {
 font-size:13px ;
 margin-top:16px ;
 line-height:18px
}

.timeline>li.timeline-inverted>.timeline-panel {
 float:right ;
 text-align:left ;
 padding:0 30px 20px 20px
}


}

@media (min-width:992px) {
 .timeline>li {
 min-height:150px
}

.timeline>li .timeline-panel {
 padding:0 20px 20px
}

.timeline>li .timeline-image {
 width:150px ;
 height:150px ;
 margin-left:-75px
}

.timeline>li .timeline-image h4 {
 font-size:18px ;
 margin-top:30px ;
 line-height:26px
}

.timeline>li.timeline-inverted>.timeline-panel {
 padding:0 20px 20px
}


}

@media (min-width:1200px) {
 .timeline>li {
 min-height:170px
}

.timeline>li .timeline-panel {
 padding:0 20px 20px 100px
}

.timeline>li .timeline-image {
 width:170px ;
 height:170px ;
 margin-left:-85px
}

.timeline>li .timeline-image h4 {
 margin-top:40px
}

.timeline>li.timeline-inverted>.timeline-panel {
 padding:0 100px 20px 20px
}


}



/* PARTENAIRES ---------------------------------------------
---------------------------------------------------------
--------------------------------------------------------*/

.team-member {
 text-align:center ;
 margin-bottom:50px
}

.team-member img {
 margin:0 auto ;
 border:7px solid #f7f7f7;
}

.team-member h4 {
 margin-top:25px ;
 margin-bottom:0 ;
 text-transform:none
}

.team-member p {
 margin-top:0
}

aside.clients img {
 margin:50px auto
}

/* ACTUALITES ---------------------------------------------
---------------------------------------------------------
--------------------------------------------------------*/
#actualites{
	/*height: 105em;*/
	padding-bottom: 10em;
}


.grid-actu{
	text-align: center;
	height: 500px;
}

.actu-block{
	border-radius: 15px;
	border: solid var(--blue-primary);
	margin-right: 2em;
	margin-top: 2em;
	width: 30%;
	height: inherit;
}

/* .actu-divers{
	display: flex;
	flex-direction: row;
	margin: 1em auto;
	width: 100%;
} */
.video-box{
	text-align: center;
	width: 90%;
	margin: 4em auto;
} 

.video-pres{
	width: 100%;
	height: 35em;
	border-radius: 5px;
}

.card{
	width: 25em;
	margin: 8em auto 2em auto;
}

.card-body{
	background-color: #ffffff;
	padding: 1em;
	font-size: 1em;
}

.card-text{
	font-size: 1.2em;
	line-height: 1.35;
	font-weight: 600;
}

.card-text-citation{
	font-size: 1em;
	margin-top: -1em;
}

.card-text-part{
	font-weight: 400;
	font-size: 1em;
	margin-top: -1em;
}

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

	#actualites{
		height: 92em;
	}

	.grid-actu{
		margin: 1em 1em;
		display: block;
		width: 100%;
		height: 30em;
	}

	/* .actu-divers{
		flex-direction: column;
	} */

	.actu-block{
		width: 90%;
		margin-top: 3em;
	}

	.video-box{
		margin-bottom: 2em;
		width: 93%;
	}

	.video-pres{
		width: 100%;
	}
}


/* CONTACT ---------------------------------------------
---------------------------------------------------------
--------------------------------------------------------*/

section#contact {
 background-color:var(--blue-primary);
 background-image:url(../img/map-image.png) ;
 background-position:center ;
 background-repeat:no-repeat
}

#contact > div > div:nth-child(2) > div > h3{
	color:white;
	}

section#contact .section-heading {
 color:#fff
}

section#contact .form-group {
 margin-bottom:25px
}

section#contact .form-group input,section#contact .form-group textarea {
 padding:20px
}

section#contact .form-group input.form-control {
 height:auto
}

section#contact .form-group textarea.form-control {
 height:236px
}

section#contact .form-control:focus {
 border-color:var(--red-primary) ;
 box-shadow:none
}

section#contact ::-webkit-input-placeholder {
 font-family:'Roboto', sans-serif;
 text-transform:uppercase ;
 font-weight:700 ;
 color:#bbb
}

section#contact :-moz-placeholder {
 font-family:'Roboto', sans-serif;
 text-transform:uppercase ;
 font-weight:700 ;
 color:#bbb
}

section#contact ::-moz-placeholder {
 font-family:'Roboto', sans-serif;
 text-transform:uppercase ;
 font-weight:700 ;
 color:#bbb
}

section#contact :-ms-input-placeholder {
 font-family:'Roboto', sans-serif;
 text-transform:uppercase ;
 font-weight:700 ;
 color:#bbb
}

section#contact .text-danger {
 color:white
}

footer {
 padding:25px 0 ;
 text-align:center
}

footer span.copyright {
 line-height:40px ;
 font-family:'Roboto', sans-serif;
 text-transform:uppercase ;
 text-transform:none;
 word-wrap: break-word;
 word-break: keep-all;
 white-space: nowrap;
 
}

footer ul.quicklinks {
 margin-bottom:0 ;
 line-height:40px ;
 font-family:'Roboto', sans-serif;
 text-transform:uppercase ;
 text-transform:none
}

ul.social-buttons {
 margin-bottom:0
}

ul.social-buttons li a {
 display:block ;
 background-color:var(--blue-primary) ;
 height:40px ;
 width:40px ;
 border-radius:100% ;
 font-size:20px ;
 line-height:40px ;
 color:#fff ;
 outline:0 ;
 -webkit-transition:all .3s ;
 -moz-transition:all .3s ;
 transition:all .3s
}

ul.social-buttons li a:hover,ul.social-buttons li a:focus,ul.social-buttons li a:active {
 background-color:var(--red-primary)
}

.btn:focus,.btn:active,.btn.active,.btn:active:focus {
 outline:0
}

#portfolioModal4 p{
	text-align: center;
}

.text-justify{
	margin-top: 15px;
	text-align: justify;
}

.portfolio-modal .modal-content {
 border-radius:0 ;
 background-clip:border-box ;
 -webkit-box-shadow:none ;
 box-shadow:none ;
 border:0 ;
 min-height:100% ;
 padding:100px 0 ;
 text-align: center;
}

.portfolio-modal .modal-content h2  {
 text-align: center;
 margin-bottom:15px ;
 font-size:3em
}

.portfolio-modal .modal-content p {
	margin-top: 1em;
	margin-bottom:1em;
	text-align:left;
}

.portfolio-modal .modal-content p.item-intro {
 margin:20px 0 30px ;
 font-family:'Roboto', sans-serif;
 font-style:italic ;
 font-size:1em;
 text-align: center;
}

.portfolio-modal .modal-content ul.list-inline {
 margin-bottom:30px ;
 margin-top:0
}

.portfolio-modal .modal-content img {
 margin-bottom:30px
}

.portfolio-modal .close-modal {
 position:absolute ;
 width:75px ;
 height:75px ;
 background-color:transparent ;
 top:25px ;
 right:25px ;
 cursor:pointer
}

.portfolio-modal .close-modal:hover {
 opacity:.3
}

.portfolio-modal .close-modal .lr {
 height:75px ;
 width:1px ;
 margin-left:35px ;
 background-color:#222 ;
 transform:rotate(45deg) ;
 -ms-transform:rotate(45deg) ;
 -webkit-transform:rotate(45deg) ;
 z-index:1051
}

.portfolio-modal .close-modal .lr .rl {
 height:75px ;
 width:1px ;
 background-color:#222 ;
 transform:rotate(90deg) ;
 -ms-transform:rotate(90deg) ;
 -webkit-transform:rotate(90deg) ;
 z-index:1052
}

.portfolio-modal .modal-backdrop {
 opacity:0 ;
 display:none
}

.modal-list {
	list-style-type: none;
	padding-left: 0em;
	text-align: justify;
}
.modal-list-li {
	font-size: 1.3em;
}

.modal-list p {
	margin-top: 1em;
	font-size: 1em;
}

::-moz-selection {
 text-shadow:none ;
 background:var(--red-primary)
}

::selection {
 text-shadow:none ;
 background:var(--red-primary)
}

img::selection {
 background:0 0
}

img::-moz-selection {
 background:0 0
}

body {
 -webkit-tap-highlight-color: var(--red-primary);
}

#qui{
 background-image:url(../img/header/bg-nous.png);
 background-repeat:none ;
 background-attachment:scroll ;
 background-position:center center ;
 -webkit-background-size:cover ;
 -moz-background-size:cover ;
 background-size:cover ;
 -o-background-size:cover ;
}

@media screen and (max-width: 768px){
	.portfolio-modal .close-modal{
		right: 5px;
	}

	.portfolio-modal .close-modal .lr {
		height: 35px;
	}

	.portfolio-modal .close-modal .lr .rl {
		height: 35px;
	}
}

/* Animation CSS */

.animation{
	display: flex;
	justify-content: center;
	margin: auto;
	padding: 10px 10px;
}

/* Loader */

#loader-2 span{
	display: inline-block;
	width: 1em;
	height: 1em;
	border-radius: 100%;
	background-color: var(--blue-primary);
	margin: 35px 5px;
  }
  
  #loader-2 span:nth-child(1){
	animation: bounce 1s ease-in-out infinite;
  }
  
  #loader-2 span:nth-child(2){
	animation: bounce 1s ease-in-out 0.33s infinite;
  }
  
  #loader-2 span:nth-child(3){
	animation: bounce 1s ease-in-out 0.66s infinite;
  }
  
  @keyframes bounce{
	0%, 75%, 100%{
	  -webkit-transform: translateY(0);
	  -ms-transform: translateY(0);
	  -o-transform: translateY(0);
	  transform: translateY(0);
	}
  
	25%{
	  -webkit-transform: translateY(-20px);
	  -ms-transform: translateY(-20px);
	  -o-transform: translateY(-20px);
	  transform: translateY(-20px);
	}
  }

/* Nouvelle présentation OMNES */

.col-omnes{
	display: flex;
	margin-left: 0;
	background-color: #e1e5f2;
	padding: 1em 0em 1em 0em;
	border-radius: 10px;
	width: 100%;
}

.col-omnes-plus, .col-omnes-moins{
	width: 40%;
	margin-left: 2em;
}

.col-omnes-p{
	margin-left: 5em;
	font-weight: 600;
}

.col-omnes-plus{
	margin-right: 3em;
}

.liste-fav{
	text-align: left;
	list-style: none;
	font-size: 1.3em;
}

.liste-fav li{
	margin-top: 1em;
}

.fa-circle-check{
	margin-left: -2em;
	margin-right: 1em;
}

.fa-circle-check{
	color: #80b918;
}

.omnes-p{
	margin-top: 2em;
}

.bold{
	font-weight: 600;
}

@media screen and (max-width: 768px){
	.col-omnes{
		display: flex;
		flex-direction: column;
	}

	.col-omnes-plus, .col-omnes-moins{
		width: 100%;
		margin-left: 1em;
	}

	.btn{
		margin-top: 5em;
	}

}

/* Caroussel Omnes */

.slider2{
	height: 50vh;
    position: relative;
	margin-top: 4em;
	margin-bottom: 8em;
}

.slider2 .img__slider2{
    opacity: 0;
    transition: opacity .5s;
}

.slider2 .img__slider2 img{
    object-fit: cover;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    /* opacity: 0; */
    /* transition: opacity .5s; */
}

.slider2 .img__slider2 p{
    position: absolute;
    top: 105%;
    left: 0;
    /* transform: translate(-50%,-50%); */
    color: black;
    font-size: 1.2em;
	font-weight: 500;
	font-family: 'Roboto', sans-serif;
}

.slider2 .img__slider2.active{
    opacity: 1;
}


.suivant2, .precedent2{
    color: #000000;
    font-size: 3rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
}

.suivant2{
    right: -3rem;
}

.precedent2{
    left: -3rem;
}


.product-container{
	display: flex;
	justify-content: space-around;
	width: 100%;
	margin-top: 0.5em;
	align-items: center;
}


.product-img-container-a{
	text-align: end;
}

.product-img-container-b{
	text-align: start;
}

@media screen and (max-width: 768px){
	.product-container{
		display: flex;
		flex-direction: column;
	}

	.product-img-container-a, .product-img-container-b{
		text-align: center;
	}

}

.product-logo {
	width: 50%;
	height: auto;
	left: 0;
	padding: 4em 0 4em 0;
	/*transition: transform 0.3s ease;*/
    /*cursor: pointer;*/ 

}


/* .product-logo:hover {
    transform: rotate(3deg) scale(1.06);
    opacity: 0.9;
} */




.product-img{
	width: 80%;
	height: auto;
	right: 0;
}

.product-img-2{
	transform: translate(0, 2em);
	width: 42%;
	height: auto;
	right: 0;
}

.product-separator{
	margin-top: 4em;
}

.separator{
    margin: 0;
    padding: 0;
    border: 0;
    height: 1px;
	background-color: rgba(var(--blue-primary-rgb), 0.3);
}

.read-more {
	font-weight:700;
	font-size: 1.28em;
}

.DEM {
	letter-spacing: .05em;
    font-family: "Roboto Flex";
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    font-variation-settings:
    	"slnt" 0,
    	"wdth" 150,
    	"GRAD" -80,
    	"XOPQ" 120,
    	"XTRA" 520,
    	"YOPQ" 110,
    	"YTAS" 750,
    	"YTDE" -103,
    	"YTFI" 738,
    	"YTUC" 580;
    
}


/* CAROUSEL PARTENAIRES ---------------------------------------------
---------------------------------------------------------
--------------------------------------------------------*/
/* .references{
	padding: 80px 0 20px 0;
}

.slide-item{
	width: 60%;
}

.prix{
	width: 90%;
}

.slider-container{
	max-width: 1000px;
	margin: 6px auto;
}
.logo-slider .item{
	border-radius: 8px;
	padding: 15px;
}
.logo-slider .slick-slide{
	margin: 25px;
}
.slick-dots li.slick-active button:before{
	color: var(--blue-primary);
}
.slick-dots li button:before{
	font-size: 12px;
}

.item:hover{
	display: block;
	transition: all ease 0.3s;
	transform: scale(1.1) translateY(-5px);
}
.slick-track:before{
	align-items: baseline;
} */

/* .slick-slider-dots{
	position: absolute;
    bottom: 0px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
}

.slick-slider-dots ul{
	display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
}

.slick-slider-dots ul li{
	margin: 0 4px;
}
.slick-slider-dots ul li button{
	background: var(--blue-primary);
    height: 8px;
    width: 35px;
    overflow: hidden;
    color: var(--blue-primary);
    border: none;
    border-radius: 4px;
}
.slick-slider-dots ul li.slick-active button{
	background: var(--blue-primary);
    color: var(--blue-primary);
} */


/* @media screen and (max-width: 721px){
	.slide-item{
		width: 5em;
	}

	.slider-container{
		max-width: 30em;
	}

	.logo-slider .slick-slide{
		margin: 0;
		margin-left: 4.5em;
	}

	.slick-prev {
		left: -36px;
	}
} */


/*notices icon animation
@keyframes notices {
  0% {
    transform: rotate(0deg);

	}
  50% {
	transform: rotate(0deg);
  }
  70% {
	transform: rotate(8deg);
  }

  85% {
	transform: rotate(-12deg);
  }
  95% {
	transform: rotate(8deg);
  }
  100% {
	transform: rotate(0deg);
  }
}

.notices {
  animation: notices 1.8s 2 ease-in-out;
  animation-delay: 100ms;
}*/