html, body {
    width:100%;
    height:100%;
    margin:0;
}
body {
    font-family: 'Roboto', sans-serif;
    color:#34354B;
    font-size:18px;
}
h1 {
    font-size:36px;
    font-weight:900;
    color:#FFAE58;
    text-align:center;
}
a {
    color:#27DA54;
}
a:hover {
    color:#21c24a;
}
.bg-block {
    width:100%;
    height:100%;
    background: url("../images/bg.jpg") no-repeat;
    background-position: center bottom;
    background-size: cover;
    background-attachment:fixed;
}
.bg-block .container, .bg-block .main-content-block {
    height:100%;
}
.main-form {
    text-align: center;
}
.main-form .form-group label {
    font-size:20px;
    margin-bottom:0px;
    margin-top:20px;
}
.form-control:focus {
    border:0px;
    box-shadow: none;
}
.form-control::placeholder {
    color: #C8D4E4;
}
.main-form .form-control {
    text-align:center;
    font-size: 20px;
    padding:0px;
    border-radius:0px;
    font-family: Verdana;
}
#numberCard,#numberPhone {
    border:0px;
    color:#C8D4E4;
}
#dateOfBirth {
    color:#C8D4E4;
 }
.main-form .form-control {
    border:0px;
    border-bottom:1px solid #C8D4E4;
}
.input-group.date {
    position: relative;
    width:70%;
    text-align: left;
}
.t-a-l, #dateOfBirth {
    text-align: left;
}
.input-group.date .form-control{
    border-bottom:0px;
}
.calendar-icon {
    position: absolute;
    right:0;
    bottom:5px;
}
.button-main {
    font-size:22px;
    background: #6CE277;
    border-radius: 30px;
    color:white;
    padding-left:35px;
    padding-right:35px;
}
.button-main:hover {
    background: #61d26c;
}
.main-form .button-main {
    margin-top:20px;
}
#emailAddress {
    width:90%;
    margin:0 auto;
}
.modal-header {
    border-bottom:0px;
    padding: 0px;
}
h2.modal-title {
    font-size: 24px;
    text-align: center;
    margin: 0px;
    padding: 0px;
}
.modal-body p {
    font-size: 16px;
}
#confirmation .modal-body {
    padding-top:40px;
    padding-bottom:40px;
    width:100%;
}
.modal-header .close {
    margin: -1rem -0.5rem -1rem auto;
}
#confirmation.modal{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
}
#confirmation .modal-content{
    background: #F8FAFC;
}
.modal-open .modal {
    overflow-y: hidden;
}
#codeSms {
    background: transparent;
    border-bottom:0px;
}
.text-block {
    text-align: center;
    font-size:20px;
}
.img-block img {
    width: 100%;
}
.error .form-control {
    border-color:#FF4A6C;
}
.error-title {
    display:none;
}
.error-title .two-error{
    display: none;
}
.error .error-title {
    display:inline;
    color:#FF4A6C;
}
.error .input-title {
    display:none;
}
.error #numberCard {
    color:#FF4A6C!important;
}
.button-repeat {
    background: transparent;
    color:#27DA54;
    border: 0;
    cursor:pointer;
}
.button-repeat:hover {
    color:#21c24a;
}
.button-repeat.disabled{
    color:silver;
    cursor: default;
}
.captcha {
    display:table;
    margin:auto;
    margin-top: 40px;
    margin-bottom: 40px;
    min-height: 78px;
}
#recaptchaError {
    display: none;
    color:red;
    position: absolute;
    left:38%;
}
.numberCard {
    position: relative;
}
.numberCard:before {
     position: absolute;
     content:"";
     background: url("../images/card-number.png") no-repeat;
     width:205px;
     height:102px;
     left:-60px;
    top:-10px;
 }
.numberCard:after {
    content:"";
    background: url("../images/card-number-phone.png") no-repeat;
    width:150px;
    height:75px;
    display:none;
    margin:0 auto;
}
#fio > div {
    padding:10px;
}
.top-bg-mobile img,.bottom-bg-mobile img {
    width:100%;
    display: none;
}
.spec {
    display: block;
    text-align: left;
}
.main-form label.form-check-label {
    cursor: pointer;
    position: relative;
    margin-top: 0px;
    padding-left: 35px;
}
.main-form input[type=radio] {
    display: none;
}
.main-form label.form-check-label:before {
    content:"";
    display:inline-block;
    width:25px;
    height:25px;
    position:absolute;
    left:0;
    border:1px solid #34354B;
    border-radius:50%;
    bottom:3px;
}
.main-form input[type=radio]:checked + label:before {
    content: "\2022";
    color: #6CE277;
    font-size: 70px;
    text-align: center;
    line-height: 25px;
}
.radio-block,.input-group.date {
    margin-top:10px;
    text-align: left;
}
.our-vk-block {
    position: absolute;
    bottom:100px;
    right:150px;
}
.our-vk-block img {
    margin-left:-30px;
    margin-top:-15px;
}
.our-vk-block a:hover img {
   opacity: 0.85;
}
@media (max-width:1024px) {
    .bg-block {
        background: url("../images/bg-tablet.jpg") no-repeat;
        background-position:center;
    }
}
@media (max-width: 1200px) {
    .numberCard::before {
        left: 0px;
    }
    #emailAddress {
        width: 50%;
    }
    .input-group.date {
        width: 55%;
    }
    .our-vk-block {
        bottom:90px;
        right:60px;
    }
}

@media (max-width: 992px) {
    .numberCard::before{
        left:-30px;
    }
}
@media (max-width: 802px) {
    .numberCard:before {
        display: none;
    }
    .numberCard:after {
        display: block;
    }
    .top-bg-mobile img, .bottom-bg-mobile img {
        width: 100%;
        display: block;
    }
    .bg-block {
        background: none;
    }
}
@media (max-width: 768px) {
    .input-group.date {
        width: 75%;
    }
    .our-vk-block {
        position: relative;
        right:0px;
        bottom:0px;
        text-align: center;
        margin-top:0px;
    }
}
@media (max-width: 580px) {
    .spec {
        display: inline;
        text-align: left;
    }
    .radio-block {
        text-align: center;
    }
    .t-a-l, #dateOfBirth {
        text-align: center;
    }
    .input-group.date {
        width: 50%;
        margin: auto;
    }
}
@media (max-width: 500px) {
    h1 {
        font-size: 22px;
        font-weight: 700;
    }
    .main-form .form-control {
        font-size: 18px;
    }
    .main-form .form-group label {
        font-size: 16px;
    }

    body, .text-block {
        font-size: 16px;
    }

    #confirmation.modal {
        width: 90%;
    }
    .button-main {
        font-size: 18px;
    }
    p {
        margin-bottom: 0px;
    }
    .bg-block .container, .bg-block .main-content-block {
        height: auto;
    }
    .bg-block {
        padding-top: 20px;
        padding-bottom: 20px;
    }
    #fio input {
        width: 90%;
        margin: auto;
    }
    #fio > div {
        padding: 30px 15px 0px 15px;
    }
    html, body {
        width:100%;
        height:auto;
    }
    .form-group.numberCard {
        margin-bottom:0px;
    }
    #emailAddress {
        width: 90%;
    }
}
@media (max-width: 360px) {
    .input-group.date {
        width: 60%;
        margin: auto;
    }
}

@media (max-height: 900px) {
    html, body {
        height:auto;
    }
    .bg-block{
        padding:30px 0;
    }
    .our-vk-block {
        position: relative;
        right:0px;
        bottom:0px;
        text-align: center;
        margin-top:50px;
    }
}
@media (max-width: 802px) {
    .bg-block {
        background: none;
    }
}
