.contact-page {
    .row {
        margin-left: -5px;
        margin-right: -5px;
        .wpcf7-form-control-wrap {
            width: 50%;
            padding: 0 5px;
            float: left;
        }
    }
    p {
        margin-bottom: 10px;
    }
}

.wpcf7-form {
    input[type="text"],
    input[type="email"],
    input[type="tel"],
    input[type="number"],
    input[type="date"],
    select,
    textarea {
        width: 100%;
        background: #fff;
        border: 1px solid #e5e5e5;
        border-radius: 0;
        box-shadow: none;
        min-height: 40px;
        padding: 10px;
        line-height: 20px;
        font-size: 13px;
        @include transition(all 0.3s ease-in-out);
        .thim-register-now-form & {
            border-color: #e5e5e5;
            color: #999;
            &::-webkit-input-placeholder {
                color: #999;
            }

            &:-moz-placeholder { /* Firefox 18- */
                color: #999;
            }

            &::-moz-placeholder { /* Firefox 19+ */
                color: #999;
            }

            &:-ms-input-placeholder {
                color: #999;
            }
        }
        &:focus {
            outline: none;
            &::-webkit-input-placeholder {
                color: transparent;
            }

            &:-moz-placeholder { /* Firefox 18- */
                color: transparent;
            }

            &::-moz-placeholder { /* Firefox 19+ */
                color: transparent;
            }

            &:-ms-input-placeholder {
                color: transparent;
            }
        }
        &.wpcf7-not-valid{
            border-color: red;
        }
    }
    textarea {
        max-height: 150px;
        overflow: auto;
    }
    .your-name,
    .your-email {
        width: calc(50% - 7px);
        width: -webkit-calc(50% - 7px);
        width: -moz-calc(50% - 7px);
        float: left;
        margin-left: 14px;
        margin-bottom: 20px;
        .thim-register-now-form & {
            width: 100%;
            float: none;
            margin-left: 0;
            margin-bottom: 0;
        }
    }
    .your-name {
        margin-left: 0;
    }
    .wpcf7-submit {
        border-radius: 0;
        padding: 10px 25px;
        font-size: 13px;
        font-weight: 700;
        line-height: 20px;
        text-transform: uppercase;
        margin-top: -10px;
        border: 0;
        &:focus {
            outline: none;
        }
        .thim-register-now-form & {
            width: 100%;
            text-align: center;
            color: #fff;
            background: #111;
            margin-top: 10px;
        }
    }
    div.wpcf7-mail-sent-ng,
    div.wpcf7-validation-errors,
    div.wpcf7-mail-sent-ok {
        margin: 0;
        text-align: center;
        border: 0;
        border-radius: 0;
        line-height: 20px;
        padding: 10px 15px;
        font-size: 13px;
        color: #a94442;
        background: #f2dede;
    }
    .wpcf7-validation-errors{
        display: none !important;
    }
    div.wpcf7-mail-sent-ok{
        color: #3c763d;
        background: #dff0d8;
    }
    span.wpcf7-not-valid-tip{
        display: none;
    }
    input.wpcf7-not-valid {
        border-color: #ff6666;
    }
}

.thim-register-now-form {
    margin: 80px 0;
    background: #fff;
    position: relative;
    max-width: 400px;
    float: right;
    min-height: 453px;
    &.top-homepage {
        margin: 61px 0;
    }
    .title {
        position: relative;
        padding: 22px 30px 70px;
        line-height: 34px;
        text-align: center;
        font-size: 22px;
        overflow: hidden;
        margin: 0 0 23px;
        color: #fff;
        &:before {
            height: 820px;
            content: '';
            border-radius: 50%;
            bottom: 20px;
            right: auto;
            width: 820px;
            position: absolute;
            left: calc(50% - 410px);
            left: -webkit-calc(50% - 410px);
            left: -moz-calc(50% - 410px);
        }
        span {
            position: relative;
        }
    }
    .wpcf7-form {
        position: relative;
        padding: 0 50px 20px;
        p {
            margin-bottom: 10px;
        }
        .ajax-loader {
            margin: auto;
            position: absolute;
            left: 0;
            right: 0;
            bottom: 35px;
            width: 30px;
        }
        div.wpcf7-validation-errors {
            display: none;
        }
        div.wpcf7-mail-sent-ok {
            margin: 0;
            text-align: center;
            margin-top: -50px;
            z-index: 9;
            position: relative;
            white-space: nowrap;
            text-overflow: ellipsis;
            overflow: hidden;
        }
        .ajax-loader{
            bottom: 35px;
        }
        &.thim-sending{
            .wpcf7-submit:hover,
            .wpcf7-submit{
                background: #111;
                color: #fff;
                @include opacity(0.5);
            }
            cursor: wait;
        }
    }

    .thim-welcome-university-2 &,
    .thim-welcome-university &{
        box-shadow: 0 0 5px 1px #E8E8E8;
        margin: 0;
        margin-top: 52px;
        max-width: 370px;
        .title{
            &:before{
                z-index: 3;
            }
            &:after{
                z-index: 2;
                content: '';
                position: absolute;
                top: auto;
                bottom: 20px;
                background: url(images/bg-contact-form.jpg) no-repeat bottom center;
                height: 820px;
                width: 820px;
                border-radius: 50%;
                left: calc(50% - 410px);
                left: -webkit-calc(50% - 410px);
                left: -moz-calc(50% - 410px);
            }
            span{
                z-index: 5;
            }
        }
    }

    .thim-welcome-university &{
        .title:before{
            @include opacity(0.6);
            background: #000;
        }
    }
    .thim-welcome-university-2 &{
        .title:before{
            @include opacity(0.9);
        }
    }
}
form.wpcf7-form{
    position: relative;
    &.thim-sending{
        .wpcf7-submit:hover,
        .wpcf7-submit{
            @include opacity(0.7);
        }
        cursor: wait;
    }
    .ajax-loader{
        position: absolute;
        bottom: 5px;
        left: 31px;
        width: 30px;
        height: 30px;
        visibility: hidden;
        overflow: hidden;
        line-height: 30px;
        text-align: center;
        background: none;
        &.is-active{
            visibility: visible;
        }
        &:before{
            line-height: 30px;
            text-align: center;
            position: absolute;
            top: 0;
            right: 0;
            content: "\f110";
            font-family: FontAwesome;
            left: 0;
            margin: auto;
            -webkit-animation: fa-spin 1s infinite steps(8);
            animation: fa-spin 1s infinite steps(8);
            color: #fff;
        }
    }
}
.thim-contact-faqs.text-center{
    .ajax-loader{
        position: absolute;
        bottom: 5px;
        left: 0;
        width: 30px;
        right: 0;
        margin: auto;
    }
}

/** Mail chim **/
.thim-newlleter-homepage {
    background: url(images/bg-newletter.png) no-repeat top right;
    max-width: 753px;
    margin: auto;
    text-align: center;
    padding: 0 15px;
    padding-top: 75px;
    padding-bottom: 70px;
    p {
        font-size: 15px;
        &.description {
            max-width: 490px;
            margin: 20px auto 40px;
        }
    }
    .mc4wp-form {
        position: relative;
        .mc4wp-form-fields {
            input[type="text"],
            input[type="email"] {
                background: #fff url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAUCAMAAACgaw2xAAAAdVBMVEVMaXHMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMw+R8MhAAAAJnRSTlMAovqp9Cm63QM7Cqbn8uKG6c0GVOiMUwlm9x2tIJtyWJq2M8UTSQAt0usAAACdSURBVHhebcnpEoMgDIXRICpQV7S2Lt2X+/6PWGvNTOpwfzDhO8Rz9dlSYK4AlA13IbIrExAXz0nhXrDITj0mxyI7PZDTLJnddGoGjFKaAtPvfKIlKSnyZDk6dCRlx3JFWb1fX9H/MkYAYDKNrZz6m18QyIhln6ynu2gDDI0UXoWoJZIiO++Yok64H7hK6bhrs64E4uUdvj9NHsH5D86uE93k9eHmAAAAAElFTkSuQmCC') no-repeat center right 10px;
                border: 1px solid #ddd;
                height: 50px;
                padding: 9px 10px;
                line-height: 30px;
                max-width: 425px;
                width: calc(100% - 120px);
                width: -webkit-calc(100% - 120px);
                width: -moz-calc(100% - 120px);
                color: inherit;
                &::-webkit-input-placeholder {
                    color: inherit;
                }

                &:-moz-placeholder { /* Firefox 18- */
                    color: inherit;
                }

                &::-moz-placeholder { /* Firefox 19+ */
                    color: inherit;
                }

                &:-ms-input-placeholder {
                    color: inherit;
                }
            }
            button[type="submit"],
            input[type="submit"] {
                text-transform: uppercase;
                font-size: 13px;
                height: 50px;
                border: none;
                padding: 10px 25px;
                font-weight: 700;
                line-height: 30px;
                &:hover{
                    @include opacity(1);
                }
            }
            input {
                display: inline-block;
                box-shadow: none;
                text-shadow: none;
                &:focus {
                    outline: none;
                    &::-webkit-input-placeholder {
                        color: transparent;
                    }

                    &:-moz-placeholder { /* Firefox 18- */
                        color: transparent;
                    }

                    &::-moz-placeholder { /* Firefox 19+ */
                        color: transparent;
                    }

                    &:-ms-input-placeholder {
                        color: transparent;
                    }
                }
            }
        }
        .mc4wp-response{
             position: absolute;
             left: 0;
             right: 0;
             margin: auto;
             margin-top: 10px;
             max-width: 490px;
         }
    }
}

.mc4wp-form {
    margin: 0;
    position: relative;
    .mc4wp-response{
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        margin-top: 10px;
        max-width: 490px;
    }
    .mc4wp-form-fields {
        input[type="text"],
        input[type="email"] {
            width: 100%;
            background: transparent;
            border: 1px solid #fff;
            line-height: 30px;
            height: 40px;
            padding: 5px 10px;
            max-width: 425px;
            margin-left: 0px;
            color: #fff;
            border-radius: 0;
            box-shadow: none;
            font-size: 13px;
            @include transition(all 0.3s ease-in-out);
            &::-webkit-input-placeholder {
                color: #fff;
            }

            &:-moz-placeholder { /* Firefox 18- */
                color: #fff;
            }

            &::-moz-placeholder { /* Firefox 19+ */
                color: #fff;
            }

            &:-ms-input-placeholder {
                color: #fff;
            }
            &:focus {
                outline: none;
                &::-webkit-input-placeholder {
                    color: transparent;
                }

                &:-moz-placeholder { /* Firefox 18- */
                    color: transparent;
                }

                &::-moz-placeholder { /* Firefox 19+ */
                    color: transparent;
                }

                &:-ms-input-placeholder {
                    color: transparent;
                }
            }
        }
        button[type="submit"],
        input[type="submit"] {
            text-transform: uppercase;
            font-size: 13px;
            height: 40px;
            line-height: 30px;
            border: none;
            padding: 5px 25px;
            font-weight: 700;
            margin-left: -1px;
            border-radius: 0;
            box-shadow: none;
            &:hover{
                @include opacity(0.9);
            }
        }
        input {
            display: inline-block;
            box-shadow: none;
            text-shadow: none;
            &:focus {
                outline: none;
            }
        }
    }
}

input.invalid{
    border-color: red !important;
}