.sm-footer {
    padding: 55px 0 60px
}

@media (max-width: 768px) {
    .sm-footer {
        padding: 35px 0 30px
    }
}

.sm-footer .sm-title {
    font-family: var(--text-font-family);
    font-weight: var(--text-font-weight);
    font-size: 40px;
    /*line-height: var(--text-line-height);*/
    text-align: center;
    width: 425px;
    margin: 150px auto;
    text-transform: none
}

@media (max-width: 768px) {
    .sm-footer .sm-title {
        max-width: 60%;
        font-size: 16px;
        text-align: center;
        margin: 30px auto
    }
}

.sm-footer__images {
    margin-top: 50px
}

@media (max-width: 768px) {
    .sm-footer__images {
        margin-top: 30px
    }
}

.sm-footer__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 71px;
    justify-content: space-between
}

@media (max-width: 768px) {
    .sm-footer__content {
        flex-direction: column;
        gap: 60px
    }
}

.sm-footer__image {
    position: relative
}

.sm-footer .sm-img {
    position: relative;
    width: 750px;
    height: 908px;
    background: #fff;
    box-shadow: 0 0 18px 0 #404040;
    transform: rotate(-7deg)
}

.sm-footer__image img {
    width: 670px;
    height: 670px;
    position: relative;
    margin: 40px
}

@media (max-width: 768px) {
    .sm-footer .sm-img {
        position: relative;
        width: 270px;
        height: 327px;
        background: #fff;
        transform: rotate(-7deg);
        box-shadow: 0 3px 7px 0 #919191
    }

    .sm-footer__image img {
        width: 240px;
        height: 240px;
        left: 0;
        margin: 15px
    }
}

.sm-footer .sm-img span {
    font-family: var(--title-font-family);
    font-size: 42px;
    position: absolute;
    width: 500px;
    left: 136px;
    bottom: 40px;
    text-align: center;
    color: #f21530
}

.sm-footer__names {
    font-family: var(--title-font-family);
    font-weight: var(--title-font-weight);
    font-size: var(--title-font-size);
    white-space: nowrap;
    line-height: var(--title-line-height);
    text-align: left;
    z-index: 1;
    margin-top: 150px;
    color: #f21630
}

.sm-footer__names div {
    display: inline-block
}

@media (max-width: 768px) {
    .sm-footer__names {
        font-size: clamp(22px, 6.5vw, 32px);
        text-align: center;
        margin-top: 15px;
        padding: 0 16px;
        max-width: 100%
    }

    .sm-footer .sm-img span {
        font-size: 16px;
        width: 180px;
        left: 45px;
        bottom: 15px;
        text-align: center
    }

    .sm-footer__names div:nth-child(2) {
        margin: 0 10px
    }
}

section:not(.sm-open) .item-animation {
    transition-property: transform, opacity, translate, color, background-color;
    transition-duration: 2s, 2s, 2s, .5s, .5s;
    transition-timing-function: ease-in-out
}

section:not(.sm-open) .item-aleft:not(.item-active) {
    translate: 100px 0;
    opacity: 0
}

section:not(.sm-open) .item-aright:not(.item-active) {
    opacity: 0;
    translate: -100px 0
}

section:not(.sm-open) .item-abottom:not(.item-active) {
    opacity: 0;
    translate: 0 -100px
}

section:not(.sm-open) .item-atop:not(.item-active) {
    opacity: 0;
    translate: 0 100px
}

section:not(.sm-open) .sm-open .item-atop:not(.item-active) {
    opacity: 1 !important;
    translate: 0 0
}

.item-active.sm-decor-text {
    opacity: 1;
    animation: reveal 1s steps(100, end) reverse
}

.sm-decor-text {
    background: linear-gradient(90deg, var(--text-clr-1) 50%, transparent 50%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    background-size: 200% 100%;
    background-position: 0 0;
    opacity: 0
}
