.container-timeline ul {
  list-style: none;
  position: relative;
  padding: 2em 0em 1em 6em !important;
  margin-bottom:3em !important;
  color: #2d5aa8;
}
.container-timeline ul:before {
  content: "";
  width: 1px;
  height: 100%;
  position: absolute;
  border-left: 2px dashed #2d5aa8;
}
.container-timeline ul li {
  position: relative;
  margin-left: 30px;
  padding: 14px;
}

.container-timeline ul li > span {
  width: 2px;
  height: 100%;
  background: #2d5aa8;
  left: -30px;
  top: 0;
  position: absolute;
}
.container-timeline ul li > span:before, .container-timeline ul li > span:after {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  border: 2px solid #2d5aa8;
  position: absolute;
  background: #ffffff;
  left: -5px;
  top: 0;
}

.container-timeline ul li.last > span:after {display:none;}

.container-timeline ul li > div {
  margin-left: 10px;
  padding:20px 0;
}

.container-timeline div .jalon {
	position:absolute;
	top:-3.5px;
	line-height:1;
	font-weight: bold;
	}
	
.periode {
    line-height: 1;
    padding: 10px;
    background: #f3f3f3;
	border-radius:3px;
	font-size:0.9em;
}

.container-timeline span.number span {
    position: absolute;
    left: -105px;
    text-align: right;
    width: 70px;
    font-weight: bold;
}
.container-timeline span.number span {
  top: -8px;
}

.container-timeline ul li.last > span:before, .container-timeline ul li.first > span:before, .container-timeline ul li.first > span:after {background:#2d5aa8 !important;}

@media (max-width: 47.563em) {
.container-timeline div .jalon {position:relative;top:-40px;}
.container-timeline ul {padding-bottom:0em !important; 
margin-bottom:6em !important;}
}
