form.contact-form .row:not(:last-child) {
    margin-bottom: 20px;
}

form.contact-form input, form.contact-form textarea {
    padding: 8px 12px;
    border-radius: 5px;
    border: 1px solid #838383;
    width: 100%;
    width: -webkit-fill-available;
}

form.contact-form button[type="submit"] {
    position: relative;
    width: 100%;
    width: -webkit-fill-available;
    background-image: none;
    box-shadow: none;
    text-shadow: none;
    background-color: #f5f5f5;
    color: #2c2c2c;
    padding: 20px 10px;
    cursor: pointer;
    transition: all 0.3s;
}

form.contact-form button[type="submit"]:hover {
    background-color: #dedede;
}

form.contact-form .loader {
    display: none;
    position: absolute;
    right: 10px;
    top: 15px;
    width: 28px;
    height: 28px;
    border: 5px solid #2c2c2c;
    border-bottom-color: transparent;
    border-radius: 50%;
    box-sizing: border-box;
    animation: rotation 1s linear infinite;
}

.contact-form .error {
    color: #ff0000;
    font-size: 14px;
    margin-top: 5px;
}
.contact-form .success {
    color: #007f0b;
    font-size: 14px;
    margin-top: 5px;
}

@keyframes rotation {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}