#timeline {
  position: relative;
  display: table;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
}
.no-style{
	list-style: none;
}
/**/
#timeline div > .year:not(:first-child):before{
  content: '';
  width: 2px;
  position: absolute;
  top: -23px;
  left: 60px;
  z-index: 1;
  background: #2f3244;
  display: inline-block;
  opacity: 1;
  height: 70px;
  transition: opacity 1.5s;
}

#timeline .year {
  transition: transform 1.5s;
}

#timeline .year:hover {
  transform: scale(1.3);
}

#timeline div.year-only-dots div {
    position: relative;
    padding-bottom: 1.25em;
    margin-bottom: 2.2em;
}

#timeline div.year-only-dots div ul {
    font-size: 1.1em;
    padding: 0 0 0 90px;
}

/*#timeline div.year-no:not(:first-of-type){
    position: relative;
    margin-top: 69px;
}*/

#timeline div.year-only-dots:not(:first-of-type){
    position: relative;
    margin-top: 62px;
}

#timeline div.year-no:first-of-type{
    position: relative;
    /*margin-top: 21px;*/
    margin-left:-10%;
}

#timeline div.year-only-dots:first-of-type{
    position: relative;
    margin-top: 2.1em;
    
}


/* Pinta boton before */
#timeline div.year-only-dots div ul:first-of-type:after {
    content: '';
    width: 10px;
    height: 10px;
    background: rgb(117, 121, 156);
    border: 2px solid #2f3244;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    border-radius: 50%;
    position: absolute;
    left: 56px;
    top: 9px;
    z-index: 2;
}


#timeline h3 {
  position: -webkit-sticky;
  position: sticky;
  top: 5rem;
  color: #888;
  margin: 0;
  font-size: 1em;
  font-weight: 400;
}

#timeline div.year {
  position: relative;
}
#timeline div.year-only-dots {
  position: relative;
}
#timeline div.year:first-child div {
  margin-top: -1.3rem;
  padding-bottom: 0px;
}
#timeline div.year div {
  position: relative;
  padding-bottom: 1.25em;
  margin-bottom: 2.2em;
}


#timeline div.year-only-dots div {
  position: relative;
  /*padding-bottom: 1.25em;*/
  /*margin-bottom: 2.2em;*/
}

#timeline div.year-only-dots div h4 {
  position: absolute;
  bottom: 0;
  font-size: .9em;
  font-weight: 400;
  line-height: 1.2em;
  margin: 0;
  padding: 0 0 0 90px;
  color: #C5C5C5;
}

#timeline div.year div ul {
  list-style-type: none;
  padding: 0 0 0 75px;
  margin: -1.3rem 0 1rem;
  max-width: 32rem;
  font-size: 1rem;
}


#timeline div.year-only-dots div ul {
  list-style-type: none;
  padding: 0 0 0 90px;
  margin: -1.1rem 0 1rem 0;
  max-width: 32rem;
  font-size: 1.1em;
}

#timeline div.year div ul:last-child {
  margin-bottom: 0;
}
/*botoncitos*/
#timeline div.year div ul:first-of-type:after {
  content: '';
  width: 10px;
  height: 10px;
  background: rgb(117, 121, 156);
  border: 2px solid #2f3244;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  position: absolute;
  left: 56px;
  top: 42px;
  z-index: 2;
  opacity: 1;
  transition: opacity 1.5s;
}

/*botoncito*/
#timeline div.year div ul:first-of-type:hover:after {
  content: '';
  width: 0;
  height: 0;
  background: rgb(117, 121, 156);
  border: 2px solid #2f3244;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
  opacity: 0;
  transition: opacity 1.5s;
}
  
#timeline div.year:hover:before {
    opacity: 0;
}

#timeline div.year:hover + .year::before {
    opacity: 0;
}

#timeline div.year:hover ul {
    padding-left: 70px;
}

#timeline div.year:hover p {
    /*-webkit-animation-duration: 3s;
    -webkit-animation-fill-mode: both;
    animation-duration: 3s;
    animation-fill-mode: both;
    -webkit-animation-name: pulse;
    animation-name: pulse;*/
    transform: scale(0.9);
    color: #fff;
}

#timeline div.year:hover p > span {
    color: #fff;
}

#timeline div.year p > span {
    margin-left: 25px;
    display: inline-block;
}

#timeline div.year div ul p:hover:before {
    opacity: 0;
}
#timeline div.year div ul p:hover:after {
    opacity: 0;
}


#timeline div.year div ul li:hover {
  color:white;
}
#timeline div.year div ul li:before {
  content: '';
  margin-left: -.5rem;
  padding-right: .3rem;
  opacity: 1;
  transition: opacity 1.5s;
}
#timeline div.year div ul li:not(:first-child) {
  margin-top: .5rem;
}
#timeline div.year div ul li span.price {
  color: mediumturquoise;
  font-weight: 500;
}

@media (min-width: 62em) {
  #timeline div.year div h4 {
    font-size: 1em;
  }
  #timeline div.year div ul {
    font-size: 1.1em;
    padding: 0 0 0 90px;
  }
    #timeline h3 {
    font-size: 1.1em;
  }
}
@media screen and (max-width: 991px) {

  #timeline {
    position: relative;
    display: table;
    height: 100%;
    margin-left: -10%;
    margin-top: 5vh;
  }

}
@media screen and (max-width: 575px) {
  .snapp_accueil_timeline_section_right>.img-container>.col-6 {
    flex: 0 0 100%;
    max-width: 100%;
    padding-right: 0;
  }

  #timeline div.year div ul {
    padding: 0 0 0 14px;
  }
  #timeline div.year p > span {
    margin-left: 0;
  }
  #timeline div.year div ul:first-of-type:after {
    left: -3px;
    top: 40px;
  }
  #timeline div > .year:not(:first-child):before {
    left: 1.5px;
  }

  #timeline {
    position: relative;
    display: table;
    height: 100%;
    margin-left: 4%;
    margin-top: 5vh;
  }
  .snapp_accueil_timeline_services_titre {
    font-size: 14px;
  }
}
