root {
    --night-blue: #1a365f;
    --night-blue-darker: #122541;
    --moon_white: #f4f6fb;
    --moon-blue: #e0d9ed;

    --link-text : #ceebff;
    --link-hover: #58cbfd;
    --link-underline-hover: #e0d9ed;
}

.timeline-node + * {
    display: none;

}

.timeline {
    border-left: 0.25em solid #2a8bbc;
    background: rgba(255, 255, 255, 0.1);
    margin: 2em auto;
    line-height: 1.4em;
    padding: 1em;
    padding-left: 2em;
    list-style: none;
    text-align: left;
    margin-left: 7em;
    margin-right: 2em;
    border-radius: 20px;
}

.timeline-stage {
    width: 100%;
    box-sizing: border-box;
    position: relative;
}

.hoverable {
    cursor: pointer;
}

.hoverable:hover {
    color: var(--link-hover);
}

.timeline .timeline-stage:before,
.timeline .timeline-stage:after {
    position: absolute;
    display: block;
    top: 20px;
}

.timeline .timeline-stage:before {
    left: -12em;
    color: var(--moon_white);
    content: attr(abbr);
    text-align: right;
    font-weight: 300;
    font-size: 1.4em;
    min-width: 9em;
}

.timeline .timeline-stage:after {
  box-shadow: 0 0 0 0.2em #42c38d;
  left: -2.5em;
  background: var(--night-blue);
  border-radius: 50%;
  height: 0.75em;
  width: 0.75em;
  content: "";
}

.timeline-node-content {
    padding: 0.5em 1em;
    font-size: 1.2em;
    color: #a9cda5;
    margin: auto;
}

@media (max-width: 1000px) {
    .timeline .timeline-stage:before {
        display: none;
        min-width: none;
    }

    .timeline {
        margin-left: 8%;
        margin-right: 8%;
    }
    
    .timeline-node-content {
        font-size: 0.8em;
    }
}


