div.info {padding:20px 20px 20px 60px;
position:relative;}

div.info:before {
    content: "\e900";
}

div.info:before{
    top: 50% !important;
	transform:translateY(-50%) !important;
	left:20px;
}




.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: #ffffff;
    border-radius: 3px;
    font-size: 0.9em;
    position: relative;
    left: -90px;
    width: calc(100% + 90px);
    z-index: 1;
}


.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;}
.content-promo h3 {
    padding-left: 59px;
    position: relative;
}

.content-promo h3 img {
    position: relative;
    position: absolute;
    left: -10px;
    top: -25px;
}

.content-content a:hover, .content-content a:focus {border-bottom-width:1px !important;}

.content-content .bloc h2 {margin-top:2px;}

.js .accordion {border-bottom:none !important;
margin-top:0 !important;}

.row:first-of-type .bloc {margin-top:50px}

.accordion .panel-title:first-of-type a {border-top:none;}


.content-promo {
    background-color: #f5f5f5;
    border-bottom: 1px solid #ddd;
    margin: 1.76471em 0;
    padding: 1.75em 3.529em;
    position: relative;
}
.content-promo a {text-decoration: none;}

.cta-simulateur, .content-content .cta-simulateur {
    background: white url(/fr/images/epargnants/calculette.svg) 17px center no-repeat;
    background-size: 15px;
    border: 1px solid #ddd;
    border-bottom-color: #ddd;
    border-bottom-width: 2px;
    border-radius: 3px;
    color: #2d5aa8;
    display: block;
    font-size: .941em;
    padding: 1em 1.2em 1em 2.5em;
    min-width: 201px;
    width: 260px;
	margin:0 auto;
}


@media (max-width: 47.563em) {
.container-timeline div .jalon {position:relative;top:-40px;
 left: -31px;
    font-size: 0.8em;}
.container-timeline ul {padding-bottom:0em !important; 
margin-bottom:6em !important;}
.js .panel-title a {font-size:0.9em; line-height:1.2}

.content-content .bloc h2 {margin-top:2px;}
.bloc {padding:20px; }
.content-promo {padding:10px !important;}
.sous-bloc {padding:20px 20px;}

.bloc {
margin-left:0px; margin-right:0px;}

}
