@media screen and (min-width:877px) {
    .page {
        background-size: cover;
    }
}

@media screen and (min-height:455px) {
    .page {
        background-size: cover;
    }

    .page__wrap {
        background: unset;
        background-image: url('../images/bg-gradient.png'), url('../images/lady-default.png');
        background-position: bottom center, bottom center;
        background-size: cover;
        background-repeat: no-repeat;
    }

    .page__wrap--error {
        background-image: url('../images/bg-gradient-small.png'), url('../images/lady-error.png');
    }
    
    .page__wrap--success {
        background-image: url('../images/bg-gradient-small.png'), url('../images/lady-succes.png');
    }

    .additional_links {
        margin-bottom: 12.5%;
    }

    .page--error .page__content--error {
        margin: 0 0 11.5% 220px;
    }

    .page--success .page__content--success {
        margin: 0 0 12.5% 220px;
    }
}

@media screen and (min-height:800px) {
    .additional_links {
        margin-bottom: 30%;
    }
}

@media screen and (max-width:876px) {
    .page__wrap {
        background-size: contain;
        background-position: center bottom;
    }

    .page__wrap--success,
    .page__wrap--error {
        background-size: cover;
    }

    .page--error .page__content--error {
        margin: 0 0 6.849vw 25.114vw;
    }
    
    .page--success .page__content--success {
        margin: 0 0 9.361vw 25.114vw;
    }
    
    .title {
        margin-bottom: 1.37vw;
        font-size: 2.397vw;
        line-height: 2.74vw;
    }

    .page--error .title,
    .page--success .title {
        font-size: 8.676vw;
    }

    .subtitle {
        font-size: 3.196vw;
    }

    .form-wrap {
        max-width: 59.932vw;
        height: 4.566vw;
        margin: 0 auto 2.74vw;
    }

    .form-wrap .wpcf7-email {
        min-height: 2.74vw;
        padding: 0.913vw 1.37vw;
        border-radius: 1.37vw;
        font-size: 1.826vw;
        line-height: 1;
    }

    .form-wrap .wpcf7-submit,
    .btn {
        width: 25.685vw;
        height: 5.479vw;
        background-size: contain;
    }

    .btn--support {
        margin-top: 1.712vw;
    }

    .form-wrap .wpcf7-submit {
        top: -0.457vw;
    }

    .form-wrap .wpcf7-not-valid-tip {
        margin-top: 0.685vw;
        font-size: 1.826vw;
    }

    .wpcf7 form div.wpcf7-response-output,
    .wpcf7-list-item-label {
        font-size: 1.826vw;
    }

    .wpcf7 form .wpcf7-response-output {
        margin: 1em 0.5em 1em;
    }

    .wpcf7-list-item {
        column-gap: 0.913vw;
    }

    .wpcf7-list-item input {
        height: 2.055vw;
        width: 2.055vw;
    }

    .logo {
        max-width: 7.078vw; 
    }

    .page--error .logo {
        margin-top: 1.598vw;
    }
    
    .page--success .logo {
        margin-top: 2.74vw;
    }

    .additional_links {
        column-gap: 2.055vw;
        margin: 4.566vw 0 2.283vw;
    }

    .additional_links__item {
        font-size: 1.37vw;
    }
}

@media screen and (max-width:1200px) and (max-height:453px) {
    .page__wrap--success,
    .page__wrap--error {
        background-size: cover;
    }

    .page--error .page__content--error {
        margin: 0 0 6.849vw 25.114vw;
    }
    
    .page--success .page__content--success {
        margin: 0 0 9.361vw 25.114vw;
    }
}

@media screen and (max-width:546px) {
    .page__content {
        padding: 0 16px;
    }
}

@media screen and (max-width:480px) {
    .form-wrap .wpcf7-email {
        min-width: 65%;
        min-height: unset;
        padding: 7px 12px;
        font-size: 14px;
        line-height: 1;
    }

    .form-wrap .wpcf7-submit {
        width: 160px;
        height: 34.5px;
        top: -2px;
        right: -6px;
        background-size: contain;
    }

    .page__wrap--error,
    .page__wrap--success {
        align-items: center;
    }

    .page--error .page__content--error,
    .page--success .page__content--success {
        margin: 150px 0 0;
    }

    .page--error .title,
    .page--success .title {
        font-size: 56px;
    }

    .page--error .subtitle,
    .page--success .subtitle {
        font-size: 22px;
    }
}

@media screen and (max-width:375px) {
    .form-wrap {
        height: unset;
    }

    .form-wrap > p {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .form-wrap .wpcf7-submit {
        position: static;
    }

    .wpcf7 form div.wpcf7-response-output {
        margin: 1rem 0;
    }

    .additional_links {
        margin-top: 20px;
    }
}