/* ---- Shared styles used across timelines ---- */
.timeline__title{
    font-size: 1.25rem !important;
    font-weight: 400;
}

.timeline__container{
    position: relative; 
    max-height: 680px; 
    overflow-y: auto;
    margin-bottom: 1rem;
}

.timeline p, .timeline__key__container p{
    margin: 0 !important;    
    line-height: 1;
}


.timeline__group, .timeline__key__container{
    padding: 0.2rem 0.5rem;
    border: 1px solid #b3b3b3 !important;
    border-radius: 10px;
    margin: 0.5rem 0;
}

/* ---- Color of the timeline line and dots ----*/
.timeline:not(.timeline--horizontal):before{
    background-color: #b3b3b3 !important;
}

.timeline__item:after{
    border-color: #b3b3b3 !important;
}

/* ---- Timeline key and container styles ----*/
.timeline__key__container{
    position: sticky; 
    left: 0; 
    top: 0; 
    width: 410px; 
    background: #ffff;
    z-index: 3;
}

.timeline__key__container .timeline__title{
    margin-bottom: 0.5rem !important;
}


.timeline__key{
    display: flex; 
    align-items: center;
    margin: 0.25rem 0;
}

.timeline__key p{
    margin: 0;
}

.timeline__key div{
    min-width: 1.25rem;
    min-height: 1.25rem;
    width: 1.25rem; 
    height: 1.25rem;
    border: 1px solid #b3b3b3; 
    margin-right: 5px;
}

.timeline__key p{
    font-size: 1rem;
}

/*---- Timeline styles ----*/
.timeline__wrap{
    padding-bottom: 3rem
}

/*---- Timeline content ----*/
.timeline__content{
    padding: 0.5rem 0 !important;
    background: #f7f7f7 !important;
    border-color: #b3b3b3 !important;
}

.timeline__item--right .timeline__content:after{
    border-right-color: #f7f7f7 !important;
}

.timeline__item--left .timeline__content:after{
    border-left-color: #f7f7f7 !important;
}

.timeline__content:after{
    border-right-color: #b3b3b3 !important;
}

.timeline__content .timeline__header_container {
    padding-bottom: 0.5rem !important;
}

.timeline__content .timeline__header_container,
.timeline__content .timeline__section {
    padding: 0 1rem
}

.timeline__content .timeline__section {
    position: relative;
    padding-top: 2rem !important;
    border-top: 1px solid #b3b3b3;
    overflow: hidden;
}


/*---- Show all items at once rather than by animation ----*/
.timeline__item{
    opacity: 1 !important;
}

.timeline__header_container{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 0.5rem !important;
}

.timeline__badge{
    border: 1px solid #ccc;
    padding: 0.25rem 0.5rem;
    text-transform: capitalize;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: absolute;
    border-top: none;
    border-right: none;
    top: 0;
    right: 0;
    background-color: #ffffff;
    z-index: 1;
}

.timeline__work_item{    
    display: flex; 
    justify-content: space-between; 
    align-items: center;
    margin: 5px 0 !important;
    font-size: 1rem;
}

.timeline__work_item p{
    padding-right: 0.5rem;
}