.contact-form {
    margin-top: 30px;
}
.contact-form .input-block {
    background-color: rgba(255, 255, 255, 0.8);
    border: solid 1px #232967;
    width: 100%;
    height: 60px;
    padding: 25px;
    position: relative;
    margin-bottom: 20px;
    -moz-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
.contact-form .input-block.focus {
    background-color: #fff;
    border: solid 1px #232967;
}
.contact-form .input-block.textarea, .contact-form .input-block.message, div[class*=" textarea-"] {
    height: auto!important;
}
.contact-form .input-block.textarea .form-control,.contact-form .input-block.message .form-control, div[class*=" textarea-"] {
    height: auto;
    resize: none;
    width:100%
}

.contact-form .input-block .text-select {
    width: 100%;
    padding: 10px 10px 10px 0;
    border-bottom: 1px solid rgba(0,0,0, 0.12);
}
.contact-form .input-block .text-select {
    appearance: none;
    -webkit-appearance:none
}

.input-block.singleselect-1:after, div[class*=" singleselect-"]:after {
    position: absolute;
    top: calc(100%/3);
    right: 10px;
    padding: 0;
    content: '';
    pointer-events: none;
    font-family: 'KurzIcon';
    content: "more_vert";
}

.contact-form .input-block label {
    position: absolute;
    left: 25px;
    top: 25px;
    display: block;
    margin: 0;
    font-weight: 300;
    z-index: 1;
    color: #333;
    font-size: 18px;
    line-height: 10px;
}
.contact-form .input-block .form-control {
    background-color: transparent;
    padding: 0;
    border: none;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    height: auto;
    position: relative;
    z-index: 2;
    font-size: 18px;
    color: #333;
}
.contact-wrapper .contact-form .input-block:not(.focused).error_warning {
    border-color: #f90000;
}
.contact-form .input-block .form-control:focus label {
    top: 0;
}
.contact-form .check {
    cursor: pointer;
    position: relative;
    margin: auto;
    width: 18px;
    height: 18px;
    -webkit-tap-highlight-color: transparent;
    transform: translate3d(0, 0, 0);
}
.contact-form .check span {margin-left:5px}
.contact-form .check:before {
    content: "";
    position: absolute;
    top: -15px;
    left: -15px;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: rgba(34,50,84,0.03);
    opacity: 0;
    transition: opacity 0.2s ease;
}
.contact-form .check svg {
    position: relative;
    z-index: 1;
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke: #c8ccd4;
    stroke-width: 1.5;
    transform: translate3d(0, 0, 0);
    transition: all 0.2s ease;
}
.contact-form .check svg path {
    stroke-dasharray: 60;
    stroke-dashoffset: 0;
}
.contact-form .check svg polyline {
    stroke-dasharray: 22;
    stroke-dashoffset: 66;
}
.contact-form .check:hover:before {
    opacity: 1;
}
.contact-form .check:hover svg {
    stroke: #4285f4;
}
.contact-form input[id*='-checkbox-']:checked + .check svg {
    stroke: #4285f4;
}
.contact-form input[id*='-checkbox-']:checked + .check svg path {
    stroke-dashoffset: 60;
    transition: all 0.3s linear;
}
.contact-form input[id*='-checkbox-']:checked + .check svg polyline {
    stroke-dashoffset: 42;
    transition: all 0.2s linear;
    transition-delay: 0.15s;
}

.contact-form .send-button {
    margin-top: 10px;
    display: inline-block;
    font-weight: 400;
    box-shadow: 0 21px 35px -5px rgba(0,0,0,0.30);
    padding: 21px 40px;
    border: none;
    outline: none;
    color: white;
    font-size: 16px;
    letter-spacing: 0.43px;
    backface-visibility: hidden;
    position: relative;
    overflow: hidden;
    -ms-transform: scale(1);
    -webkit-transform: scale(1);
    transform: scale(1) translateZ(0);
    -webkit-transition: all .25s;
    -moz-transition: all .25s;
    transition: all .25s;
}
.send-button span.loader{ background-color:inherit; border-radius: inherit; }
.send-button.loading span.loader:before{ width: 20px; height: 20px; margin: 0 auto; content:''; position: absolute; top:50%; left: 50%; margin-top:-10px; margin-left:-10px; border: 1px solid rgb(255,255,255); border-radius: 50%; z-index: 2; border-left-color: transparent; border-right-color: transparent; animation: cssload-spin 650ms infinite linear; -o-animation: cssload-spin 650ms infinite linear; -ms-animation: cssload-spin 650ms infinite linear; -webkit-animation: cssload-spin 650ms infinite linear; -moz-animation: cssload-spin 650ms infinite linear; }
.send-button.loading span.loader:after{ background-color:inherit; border-radius: inherit; width: 100%; height: 100%; position: absolute; left:0; top:0; content:''; z-index: 1; }
@keyframes cssload-spin{ 100%{ transform: rotate(360deg); transform: rotate(360deg); } }
@-o-keyframes cssload-spin{ 100%{ -o-transform: rotate(360deg); transform: rotate(360deg); } }
@-ms-keyframes cssload-spin{ 100%{ -ms-transform: rotate(360deg); transform: rotate(360deg); } }
@-webkit-keyframes cssload-spin{ 100%{ -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
@-moz-keyframes cssload-spin{ 100%{ -moz-transform: rotate(360deg); transform: rotate(360deg); } }

@media (min-width: 768px) {
    .contact-wrapper {
        /*width: 60%;*/
        margin: auto;
    }
}
.input-block.banknotes-street.shown label:after,
.input-block.banknotes-zip.shown label:after,
.input-block.verify-label label:after,
.input-block.banknotes-city.shown label:after,
.input-block.banknotes-country.shown label:after,
.input-block.banknotes-phone.shown label:after{content:" *"}
.contact-wrapper {
    padding: 15px;
}
.contact-wrapper .error-messages{ height: auto; position: relative; width: 100%; max-width: 100%; bottom: 0; left: 0; cursor: default; display: -ms-flexbox; display: flex; -ms-flex-pack: center; justify-content: center; -ms-flex-align: center; align-items: center; -webkit-transition: all 0.6s cubic-bezier(0.77, 0, 0.2, 1); -moz-transition: all 0.6s cubic-bezier(0.77, 0, 0.2, 1); transition: all 0.6s cubic-bezier(0.77, 0, 0.2, 1); }
.contact-wrapper .error-messages .submit_message, .contact-wrapper .error-messages .error_message{ opacity: 0; visibility: hidden; bottom: 70px; font-size:14px; font-family: 'Open Sans', sans-serif; padding: 14px 20px 13.5px; color:#fff; font-weight: 400; background-color: #D74C4C; position: absolute; border-radius: 7px; box-shadow:15px 30px 80px 4px rgba(149,109,109,0.28); backface-visibility: hidden; left: 50%; -ms-transform: translateX(-50%) scale(0.94) translateZ(0); -webkit-transform: translateX(-50%) scale(0.94) translateZ(0); transform: translateX(-50%) scale(0.94) translateZ(0); -webkit-transition: all 0.6s cubic-bezier(0.77, 0, 0.2, 1); -moz-transition: all 0.6s cubic-bezier(0.77, 0, 0.2, 1); transition: all 0.6s cubic-bezier(0.77, 0, 0.2, 1); }
.contact-wrapper .error-messages .submit_message{ background:#7fb924; box-shadow:15px 30px 80px 4px rgba(90,105,66,0.28); }
.contact-wrapper .contact-form.error-message-showing{ margin-bottom: 70px; -webkit-transition-delay: 0s; transition-delay: 0s; }
@media screen and (max-width: 992px){ .contact-wrapper .contact-form.error-message-showing{ margin-bottom: 120px; } }
@media screen and (max-width: 769px){ .contact-wrapper .error-messages .submit_message, .contact .error-messages .error_message{ width: 90%; } }
.contact-wrapper .error-messages.show.success .submit_message,
.contact-wrapper .error-messages.show.error .error_message{ bottom: 70px; visibility: visible; opacity: 1; -ms-transform: translateX(-50%) scale(1) translateZ(0); -webkit-transform: translateX(-50%) scale(1) translateZ(0); transform: translateX(-50%) scale(1) translateZ(0); -webkit-transition-delay: 0.35s; transition-delay: 0.35s; }
.contact-wrapper .error-messages.show.success .submit_message{ -webkit-transition-delay: 0.7s; transition-delay: 0.7s; }

.bg-none {
    background: none;
    margin-top: -1em;
}
#cTA-Element-18-countryselect-1{
    position: relative;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border: none;
    width: 100%;
    -moz-padding-start: calc(10px - 3px);
    padding-left: 10px;
    padding-top: 0;
    top: -6px;
}
