#timeline {
    width: 100%;
    position: relative;
    overflow: hidden;
    background: url(../assets/paper.jpg);
    box-shadow: 0 4px 8px 3px #00000026, 0 1px 3px 0 #0000004d, 0 -4px 8px 3px #00000026, 0 -1px 3px 0 #0000004d;
}

body.dark #timeline {
    background: url(../assets/paper_head.jpg);
}

#timeline::after {
    content: '';
    position: absolute;
    background: linear-gradient(180deg, #0000001f 0%, #00000000 100%);
    width: 100%;
    height: 12px;
    right: 0;
    top: 0;
}

.timeline_bg {
    padding: 180px 0 140px;
}

.timeline_border {
    width: 100%;
    height: 100%;
    border-radius: 3px;
    padding: 3px;
    background: linear-gradient(180deg, #4D4336 0%, #714A27 63.5%, #AA8E75 79%, #5E5548 98.5%);
}

.timeline_item {
    max-width: 133px;
    width: 133px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: center;
    opacity: 0;
    position: relative;
}

.timeline_item.active {
    opacity: 1;
}

.timeline_name {
    font-family: Evolventa Bold;
    text-align: center;
    font-size: 18px;
    line-height: 100%;
    letter-spacing: -0.18px;
    position: relative;
}

.timeline_mounth {
    text-align: center;
    text-align: center;
    font-family: Evolventa Bold;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.16px;
}

.timeline_body {
    width: 76px;
    height: 76px;
    transition: all 0.3s ease;
    border-radius: 4px;
    border: 3px solid #EDEDED;
    background: #EDEDED;
    box-shadow: 0px 0px 2px 1px #08080830;
}

body.dark .timeline_body {
    border: 3px solid #343333;
    background: #303130;
}

body.dark .timeline_info.active .timeline_body {
    border: 0px solid #66462a;
    background: #66462a;
}

.timeline_text {
    border-radius: 3px;
    background: linear-gradient(0deg, #FFF 0%, #FFF 100%), linear-gradient(180deg, #E0E0E0 0%, rgba(224, 224, 224, 0.85) 100%);
    font-family: Evolventa Bold;
    font-size: 16px;
    line-height: 120%;
    padding: 10px 14px;
}

body.dark .timeline_text {
    background: url(../assets/paper_black.jpg) center / cover no-repeat;
}

body.dark .timeline_border {
    background: #877751;
}

.timeline_body img {
    border-radius: 3px;
    object-fit: cover;
    width: 100%;
}

.timeline_info {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.6s ease;
    cursor: pointer;
}

.timeline_info.active .timeline_body {
    border: 0px solid #4D4336;
    padding: 3px;
    background: linear-gradient(180deg, #4D4336 0%, #714A27 63.5%, #AA8E75 79%, #5E5548 98.5%);
    opacity: 1;
    transform: translateY(0);
}

.timeline_timeline {
    display: flex;
    flex-direction: row;
    width: 100%;
    position: relative;
    max-width: 1920px;
    margin: 0 auto;
}

.timeline_brakepoints {
    display: flex;
    flex-direction: row;
    width: 100%;
    position: relative;
    justify-content: space-between;
    padding: 0 40px;
    max-width: 1280px;
    height: 186px;
    margin: 0 auto;
}

.timeline_line {
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    height: 6px;
    transition: all 1s linear;
    opacity: 0;
    top: 50%;
}

.timeline_line_new {
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    height: 4px;
    background: #F5F5F5;
    box-shadow: 0 -2.04px 0.408px 0 #ffffff80 inset, 0 1.02px 2.04px 0 #00000066 inset;
    top: 50%;
    transition: all 3s linear;
}

body.dark .timeline_line_new {
    background: #F5F5F500;
    box-shadow: 0 -2.04px 0.408px 0 #413c3c80 inset, 0 1.02px 2.04px 0 #37343466 inset;
}

.timeline_cloud {
    border-radius: 10px;
    background: linear-gradient(0deg, #FFF 0%, #FFF 100%), linear-gradient(180deg, #E0E0E0 0%, rgba(224, 224, 224, 0.85) 100%);
    box-shadow: 0 1px 2px 0 #0000004d, 0 1px 3px 1px #00000026;
    padding: 6px;
    position: absolute;
    width: 300px;
    top: -155px;
    opacity: 0;
    transition: all 0.3s ease;
    z-index: 5;
}

body.dark .timeline_cloud {
    background: url(../assets/paper_black.jpg) center / cover no-repeat;
}

.timeline_body:hover+.timeline_cloud {
    opacity: 1;
}

.cloud_first {
    left: 0;
}

.cloud_last {
    right: 0;
}

.to_read {
    width: 8px;
    height: 8px;
    position: absolute;
    right: -13px;
    top: -5px;
    background: #ff0000;
    border-radius: 50%;
}

.timeline_slider .slick-list {
    padding: 0 !important;
}

@media (max-width: 1440px) {

    .timeline_item {
        max-width: 116px;
        width: 116px;
    }

    .to_read {
        right: -10px;
    }

    .timeline_mounth {
        font-size: 14px;
        letter-spacing: -0.14px;
    }
}

@media (max-width: 1439px) {

    .timeline_body {
        width: 55px;
        height: 55px;
        border-radius: 4px;
    }

    .timeline_name {
        font-size: 14px;
        line-height: 100%;
        letter-spacing: -0.14px;
    }

    .timeline_brakepoints {
        padding: 0;
        max-width: 860px;
        height: 145px;
    }
}

@media (max-width: 1020px) {

    .timeline_bg {
        padding: 180px 0 130px;
    }

    .timeline_cloud {
        font-size: 16px;
        line-height: 120%;
    }

    .timeline_slider .slick-list {
        overflow: visible !important;
    }

    .timeline_brakepoints {
        padding: 0;
        height: 155px;
    }

    .timeline_item {
        display: flex !important;
        padding-top: 5px;
    }

}

@media (max-width: 850px) {
    .timeline_item {
        max-width: 154px;
        width: 154px;
    }
}

@media (max-width: 780px) {

    .timeline_slider {
        width: 90%;
        margin: 0 auto;
    }

    .cloud_last {
        right: auto;
    }

    .cloud_first {
        left: auto;
    }
}


@media (max-width: 450px) {
    .timeline_slider {
        width: 100%;
        margin: 0 auto;
    }

    .timeline_item {
        max-width: 135px;
        width: 135px;
        margin: 0 8px;
    }
}