.timeliny {
    position: relative;
    display: block;
    margin: 0 auto 4rem;
    padding: 5rem 0 2rem 0;
    width: 100%;
    border-top: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
    font: normal normal 400 1rem/1 Arial, sans-serif;
    text-rendering: optimizeLegibility;
    color: #ddd;
    opacity: 0;
    overflow: hidden;
    cursor: move
}

.timeliny.loaded {
    opacity: 1
}

.timeliny:before {
    content: "";
    position: absolute;
    background-color: #e5e5e5;
    width: 100%;
    height: 1px;
    top: 69%;
    left: 0
}

.timeliny .timeliny-wrapper {
    display: block;
    margin: auto;
    width: 100%;
    max-width: 1024px
}

.timeliny .timeliny-dot {
    left: 0;
    margin-top: -.6rem;
    width: 1.2rem;
    height: 1.2rem;
    border-radius: 50%;
    border: 1px solid #ddd;
    background-color: #fff
}

.timeliny .timeliny-dot,
.timeliny .timeliny-dot:before {
    transition: all .35s ease-in-out;
    display: block;
    position: absolute
}

.timeliny .timeliny-dot:before {
    content: attr(data-date);
    top: -3rem;
    left: 1.25rem;
    color: #000
}

.timeliny div:not(.inactive) > .show {
    position: relative;
    bottom: 40px;
    left: 21px;
    opacity: 0;
    pointer-events: none;
    transition: all .35s ease-in-out;
    font-size: .7rem;
}

.timeliny div.active > .show {
  transition: all .35s ease-in-out;
  opacity: 1;
  pointer-events: auto;
}


@media (min-width:768px) {
    .timeliny .timeliny-dot:after {
        width: 341.33333px
    }
}

.timeliny .timeliny-timeline {
    position: absolute;
    top: 70%;
    left: 0;
    display: table;
    width: 100%;
    z-index: 2
}

.timeliny .timeliny-timeline .timeliny-timeblock {
    display: table-cell;
    position: relative
}

.timeliny .timeliny-timeline .timeliny-timeblock.active .timeliny-dot {
    border-color: #37404a;
    background-color: #37404a;
    box-shadow: 1px 1px 4px 0 rgba(0, 0, 0, .33)
}

.timeliny .timeliny-timeline .timeliny-timeblock.active .timeliny-dot:before {
    color: #37404a
}

.timeliny .timeliny-timeline .timeliny-timeblock.active .timeliny-dot:after {
    color: #000;
    opacity: 1
}

.timeliny .timeliny-timeline .timeliny-timeblock.inactive .timeliny-dot {
    cursor: move
}

.timeliny .timeliny-timeline .timeliny-timeblock.inactive .timeliny-dot:before {
    color: #ddd
}

.timeliny .timeliny-timeline .timeliny-timeblock:not(.inactive):not(.active) .timeliny-dot:hover {
    border-color: #ddd;
    background-color: #ddd
}

.timeliny .timeliny-timeline .timeliny-timeblock:not(.inactive):not(.active) .timeliny-dot:hover:before {
    color: #000
}

.timeliny .timeliny-timeline .timeliny-timeblock .timeliny-dot:hover:after {
    color: #000;
    opacity: 1
}

.timeliny .timeliny-vertical-line {
    position: absolute;
    display: block;
    z-index: 1;
    right: 50%;
    top: 0;
    width: 1px;
    height: 100%;
    background-color: #ddd
}

@media (min-width:768px) {
    .timeliny .timeliny-vertical-line {
        right: 32%
    }
}

.timeliny .timeliny-vertical-line:before {
    top: 0;
    border-top: 8px solid #ddd
}

.timeliny .timeliny-vertical-line:after,
.timeliny .timeliny-vertical-line:before {
    content: "";
    position: absolute;
    left: -7px;
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent
}

.timeliny .timeliny-vertical-line:after {
    bottom: 0;
    border-bottom: 8px solid #ddd
}
