.block {
    position: relative;
    min-width: 300px;
    min-height: calc(max(600px, 100vh));
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    gap: 32px;
}

.block:before {
    content: '';
    display: block;
}

.block:after {
    content: '';
    display: block;
}

.block > * {
    max-width: 650px;
    width: 85%;
}

.block > .image {
    max-width: 550px;
}

.block > .input-block {
    max-width: 550px;
}

.block-divider {
    margin: 0 auto;
    width: 256px;
    border-bottom: var(--text-color) 1px solid;
    opacity: 0.2;
}

#block-1 .name {
    font-family: 'Viaoda Libre', 'Times New Roman', serif;
    font-size: var(--font-size-6);
    font-weight: var(--font-weight-2);
    text-align: center;
}

#block-1 a {
    text-decoration: none;
}

@keyframes show {
    0% {
        opacity: 0;
        font-size: calc(var(--font-size-2) / 2);
        padding: 8px;
        gap: 8px;
    }
}

@keyframes blink {
    50% {
        opacity: 0.25;
        font-size: calc(var(--font-size-2) * 0.875);
        padding: 2px;
        gap: 14px;
    }
}

#block-1 .scroll-btn {
    height: 32px;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: var(--font-size-2);
    color: var(--text-color);
    gap: 16px;
    opacity: 0.6;
    animation: show ease-out 3s, blink ease-in-out 3s 3s infinite;
}

#block-1 .scroll-btn img {
    height: 100%;
}

#block-2 .date {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

#block-2 #flower-image-holder {
    height: 256px;
}

@keyframes pulse {
    50% {
        height: 240px;
    }
}

#block-2 #flower-image {
    height: 256px;
    animation: pulse ease-in-out 3s infinite;
}

#block-3 .timeline-handler {
    --space-size: 32px;
    border-left: 2px solid var(--text-color);
}

#block-3 .timeline {
    position: relative;
    display: flex;
    margin: calc(var(--space-size) * 2) 0;
}

#block-3 .timeline:after {
    content: '';
    width: 10px;
    height: 10px;
    background: var(--text-color);
    position: absolute;
    top: 6px;
    left: -6px;
    border-radius: 50%;
}

#block-3 .timeline .icon {
    width: 48px;
    height: 48px;
    margin-left: var(--space-size);
}

#block-3 .timeline .text {
    width: 100%;
    display: flex;
    flex-direction: row;
}

#block-3 .timeline .time {
    margin-left: var(--space-size);
    font-weight: var(--font-weight-2);
}

#block-3 .timeline .description {
    margin-left: var(--space-size);
    display: flex;
    flex-direction: column;
}

#block-3 .timeline .description > div:first-child {
    font-weight: var(--font-weight-1);
}

#block-3 .timeline .description > div:not(:first-child) {
    margin-top: 16px;
}

#block-4 #sreda-image {
    height: 310px;
}

#block-5 .text-container {
    max-width: 600px;
}

#block-5 .palette {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 32px;
    max-width: 232px;
}

#block-5 .color {
    width: 100px;
    height: 100px;
}

#poll-form .input-description {
    margin-top: 8px;
    font-size: var(--font-size-0);
}

#block-7 #we-image {
    height: 240px;
}

#bg-flowers {
    top: 5px;
    height: 200px;
    width: 100%;
    min-width: 300px;
    background-size: 750px;
}

@keyframes snow {
    10% {
        opacity: 1;
    }
    90% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        top: 400px
    }
}

.background.flower-small {
    height: 16px;
    width: 16px;
    top: 20px;
    opacity: 0;
}

#bg-flower-small-1 {
    margin-left: 284px;
    animation: snow linear 6s 1s infinite;
}

#bg-flower-small-2 {
    margin-right: 434px;
    animation: snow linear 6s 2s infinite;
}

#bg-flower-small-3 {
    margin-left: 584px;
    animation: snow linear 6s 3s infinite;
}

#bg-flower-small-4 {
    margin-right: 284px;
    animation: snow linear 6s 4s infinite;
}

#bg-flower-small-5 {
    margin-right: 584px;
    animation: snow linear 6s 5s infinite;
}

#bg-flower-small-6 {
    margin-left: 434px;
    animation: snow linear 6s 6s infinite;
}

@media screen and (max-width: 700px) {
    .block > .image {
        max-width: 450px;
    }

    #block-3 .timeline-handler {
        --space-size: 16px;
    }
}

@media screen and (max-width: 600px) {
    #block-3 .timeline .text {
        flex-direction: column;
    }

    #block-3 .timeline .time {
        margin-bottom: 16px;
    }

    #bg-flower-small-3 {
        display: none;
    }

    #bg-flower-small-5 {
        display: none;
    }
}


@media screen and (max-width: 500px) {
    #bg-flowers {
        top: -10px;
        background-size: 600px;
    }

    #bg-flower-small-1 {
        margin-left: 284px;
    }

    #bg-flower-small-2 {
        margin-right: 359px;
    }

    #bg-flower-small-3 {
        display: block;
        margin-left: 434px;
    }

    #bg-flower-small-4 {
        margin-right: 284px;
    }

    #bg-flower-small-5 {
        display: block;
        margin-right: 434px;
    }

    #bg-flower-small-6 {
        margin-left: 359px;
    }
}

@media screen and (max-width: 450px) {
    #bg-flower-small-3 {
        display: none;
    }

    #bg-flower-small-5 {
        display: none;
    }
}

@media screen and (max-width: 375px) {
    #bg-flower-small-2 {
        display: none;
    }

    #bg-flower-small-6 {
        display: none;
    }
}
