a.change-btn,
button.change-btn {
    width: calc(250 / 1920 * 100vw);
    height: calc(60 / 1920 * 100vw);
    font-size: calc(14 / 1920 * 100vw);
    color: #fff;
    background: #24abe3;
    margin-top: calc(75 / 1920 * 100vw);
    margin-bottom: calc(120 / 1920 * 100vw);
    -webkit-box-shadow: 0px 5px 18px 2px rgba(36, 171, 227, 0.2);
    box-shadow: 0px 5px 18px 2px rgba(36, 171, 227, 0.2);
}

.contacts .h1 {
    font-size: calc(30 / 1920 * 100vw);
    font-family: "MontserratAlternates-Bold";
    margin-bottom: calc(20 / 1920 * 100vw);
    display: block;
}

.contacts p  {
    font-size: calc(14 / 1920 * 100vw);
    margin-bottom: calc(35 / 1920 * 100vw);
    line-height: 1.5;
}

.contacts  .content  a  {
    color: #000;
    line-height: 1.7;
}

.contacts .content a:hover  {
    text-decoration: none;
    color: #24abe3;
}

.contacts .content  a svg {
    transition: all .6s;
}
.contacts .content  a:hover svg {
    fill: #24abe3;
}

.contacts .content a svg {
    width: calc(15 / 1920 * 100vw);
    height: calc(15 / 1920 * 100vw);
}

.contacts .email {
    text-transform: lowercase;
}

.map {
    width: calc(660 / 1920 * 100vw);
    height: calc(540 / 1920 * 100vw);
    border-radius: calc(15 / 1920 * 100vw);
    -webkit-box-shadow: 0px 10px 16px 4px rgba(36, 171, 227, 0.2);
    box-shadow: 0px 10px 16px 4px rgba(36, 171, 227, 0.2);
    position: relative;
    z-index: 100;
}

.map-decor {
    width: calc(600 / 1920 * 100vw);
    height: calc(600 / 1920 * 100vw);
    border-radius: 50%;
    position: absolute;
    border: 1px solid #c2e8f7;
    left: calc(140 / 1920 * 100vw);
    top: calc(-20 / 1920 * 100vw);
    z-index: -1;
}

.contacts .content {
    width: calc(100% - (390 * 2) / 1920 * 100vw);
    position: relative;
}

.contacts-info {
    padding-left: calc(120 / 1920 * 100vw);
}

.contacts a.social {
    margin-right: calc(10 / 1920 * 100vw);
    height: calc(15 / 1920 * 100vw);
    top: calc(-15 / 1920 * 100vw);
    position: relative;
}

.contacts .section-title p {
    text-transform: initial;
    padding: 0;
}

.contacts .section-title h1 {
    padding: 0;
}

.contacts .section-title p a {
    color: #24abe3;
}

.contacts form {
    padding-left: 0;
}

.contacts .form-row div:last-child input, .contacts select{
    margin-right: 0;
}

.contacts form > div:first-child {
    margin-bottom: 0;
}

.contacts .form-row div{
    margin-bottom: calc(65 / 1920 * 100vw);
    padding: 0;
}

.contacts a.change-btn,
.contacts button.change-btn {
    color: #fff;
    margin-top: calc(15 / 1920 * 100vw);
}

.contacts .content a.change-btn:hover,
.contacts .content button.change-btn:hover {
    color: #fff;
}

.contacts .form-content {
    padding-left: 0;
}

.contacts-info span {
    display: none;
}

#contact-form .form_response {
    display: none;
    margin-top: calc(15 / 1920 * 100vw);
    font-size: calc(14 / 1920 * 100vw);
}
#contact-form.form-success .form_response.response_success,
#contact-form.form-error .form_response.response_error {
    display: block;
}

@media screen and (max-device-width: 480px) {
    .contacts .content, .contacts .section-title {
        width: calc(100% - (15 * 2) / 375 * 100vw);
        margin-left: calc(15 / 375 * 100vw);
    }

    .content .row, .section-title .row {
        display: block;
    }

    .contacts .h1 {
        font-size: calc(20 / 375 * 100vw);
        margin-bottom: calc(20 / 1920 * 100vw);
    }

    .contacts p  {
        font-size: calc(14 / 375 * 100vw);
        margin-bottom: calc(40 / 1920 * 100vw);
    }

    .contacts .content a svg {
        width: calc(15 / 375 * 100vw);
        height: calc(15 / 375 * 100vw);
    }

    .map {
        width: 100%;
        height: calc(290 / 375 * 100vw);
        border-radius: calc(15 / 375 * 100vw);
        top: calc(300 / 375 * 100vw);
    }

    .map-decor {
        width: calc(315 / 375 * 100vw);
        height: calc(315 / 375 * 100vw);
        right: calc(-40 / 375 * 100vw);
        left: auto;
        top: calc(290 / 375 * 100vw);
    }

    .contacts-info {
        padding-left: 0;
        position: relative;
        top: calc(-300 / 375 * 100vw);
    }

    .contacts-info br {
        display: none;
    }

    .contacts-info span {
        display: inline;
        margin-right: calc(5 / 375 * 100vw);
        margin-left: calc(5 / 375 * 100vw);
    }

    .contacts .contacts-info h1 {
        margin-top: calc(40 / 375 * 100vw);
    }

    .contacts .section-title p {
        max-width: 100%;
    }

    .contacts .section-title {
        margin-top: calc(80 / 375 * 100vw);
    }

    .contacts a.change-btn,
    .contacts button.change-btn {
        width: calc(250 / 375 * 100vw);
        height: calc(40 / 375 * 100vw);
        font-size: calc(12 / 375 * 100vw);
        margin-top: calc(40 / 375 * 100vw);
        margin-bottom: calc(80 / 375 * 100vw);
    }

    #contact-form .form_response {
        display: none;
        margin-top: calc(40 / 375 * 100vw);
        font-size: calc(12 / 375 * 100vw);
    }

    .items-row {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

    .items-row div:first-of-type {
        margin-right: calc(60 / 375 * 100vw);
    }

}


@media (min-width: 768px) and (max-width: 1440px) {
    a.change-btn,
    button.change-btn {
        width: calc(325 / 1920 * 100vw);
        height: calc(78 / 1920 * 100vw);
        font-size: calc(18 / 1920 * 100vw);
        margin-top: calc(97.5 / 1920 * 100vw);
        margin-bottom: calc(156 / 1920 * 100vw);
    }

    .contacts .h1 {
        font-size: calc(39 / 1920 * 100vw);
        margin-bottom: calc(26 / 1920 * 100vw);
    }

    .contacts p  {
        font-size: calc(18 / 1920 * 100vw);
        margin-bottom: calc(45.5 / 1920 * 100vw);
    }

    .contacts .content a svg {
        width: calc(19.5 / 1920 * 100vw);
        height: calc(19.5 / 1920 * 100vw);
    }

    .map {
        width: calc(858 / 1920 * 100vw);
        height: calc(702 / 1920 * 100vw);
        border-radius: calc(19.5 / 1920 * 100vw);
    }

    .map-decor {
        width: calc(780 / 1920 * 100vw);
        height: calc(780 / 1920 * 100vw);
        left: calc(182 / 1920 * 100vw);
        top: calc(-26 / 1920 * 100vw);
    }

    .contacts .content {
        width: calc(100% - (219 * 2) / 1920 * 100vw);
    }

    .contacts-info {
        padding-left: calc(156 / 1920 * 100vw);
    }

    .contacts a.social {
        margin-right: calc(13 / 1920 * 100vw);
        height: calc(19.5 / 1920 * 100vw);
        top: calc(-19.5 / 1920 * 100vw);
    }

    .contacts .form-row div{
        margin-bottom: calc(84.5 / 1920 * 100vw);
    }

    .contacts a.change-btn,
    .contacts button.change-btn {
        margin-top: calc(19.5 / 1920 * 100vw);
    }


    #contact-form .form_response {
        margin-top: calc(19.5 / 1920 * 100vw);
        font-size: calc(18 / 1920 * 100vw);
    }
}