* {margin: 0;padding: 0;box-sizing: border-box;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;}
body {line-height: 1.2!important; font-family: "Inter", sans-serif!important;}
body a {text-decoration: none; color: #fff;}
body a:hover{text-decoration: none;}
.row {margin: 0!important;}
.container-fluid{padding: 0!important; background: url("../img/bg.png") repeat;}
.content__ {min-height: 100vh; height: auto; width: 100%;}
.content {position: relative; width: 770px; height: auto; margin: 0 auto!important;}
.clear {clear: both;}
.flexStart, .flexCenter, .flexBetween, .flexEnd {
    display: -webkit-flex; display: flex; -webkit-align-content: space-between; align-content: space-between;
}
.flexStart, .flexBetween, .flexEnd {
    -webkit-flex-direction: row; flex-direction: row;
}
.flexCenter {
    -webkit-flex-direction: column; flex-direction: column; -webkit-justify-content: center; justify-content: center;
    -webkit-align-content: center; align-content: center;
}
.flexStart {
    -webkit-justify-content: flex-start; justify-content: flex-start;
}
.flexEnd {
    -webkit-justify-content: flex-end; justify-content: flex-end;
}
.flexBetween {
    -webkit-justify-content: space-between; justify-content: space-between;
}
.flexWrap {
    -webkit-flex-wrap: wrap; flex-wrap: wrap;
}
.flexNoWrap {
    -webkit-flex-wrap: nowrap; flex-wrap: nowrap;
}
.defaultBtn {
    background: #36C14A; border: 1px solid rgba(0, 0, 0, 0.1); border-radius: 4px; height: 45px; width: 100%;
    text-align: center; color: #FFFFFF; cursor: pointer; font-size: 14px; line-height: 43px; font-weight: 400;
    outline: none; -ms-outline: none; -webkit-outline: none; -moz-outline: none;
    transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all;
}
.defaultBtn:hover, .defaultBtn:focus, .defaultBtn:active {
    box-shadow: 0px 4px 20px #36C14A; color: #FFFFFF;
}
.defaultBtn:disabled {
    opacity: 0.5; cursor: not-allowed;
}
.blueBtn {
    background: #FFFFFF; border: 1px solid #0070B9; border-radius: 4px; height: 45px; width: 168px;
    text-align: center; color: #0070B9; cursor: pointer; font-size: 14px; line-height: 43px; font-weight: 400;
    outline: none; -ms-outline: none; -webkit-outline: none; -moz-outline: none;
    transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all;
}
.blueBtn:hover, .blueBtn:focus, .blueBtn:active {
    background: #0070B9; color: #FFFFFF;
}
.testContent {
    width: 100%; height: auto; min-height: 465px; max-height: calc(100vh - 120px); background: #FFFFFF; border: 1px solid rgba(51, 51, 51, 0.15);
    box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.15); border-radius: 6px; padding: 60px 110px; overflow-y: auto;
    transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all;
    position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%);
}
.testContent h1, .testContent h2, .testContent h3 {
    font-weight: 500; font-size: 26px; line-height: 31px; color: #333333;
}
.testContent h1 {margin: 0 0 10px 0; text-align: center;}
.testContent h2, .testContent h3 {margin: 0 0 30px 0;}
.testWrap {
    width: 100%; height: auto; position: relative;
}
.testWrap.startStep {
    position: absolute; left: 0; top: 50%; transform: translate(0, -50%); -webkit-transform: translate(0, -50%); -ms-transform: translate(0, -50%);
    padding: 0 70px;
}
.testWrap p {
    font-weight: 300; font-size: 18px; line-height: 22px; text-align: center; color: #333333; margin: 0 0 20px 0;
}
.testWrap.startStep p {
    padding: 0 70px;
}
.testWrap .defaultBtn {
    margin: 0 auto; width: 144px; display: block;
}
.startStep .defaultBtn {
    width: 189px;
}
.btns {
    width: 401px; height: auto; margin: 0 auto;
}
.btns .defaultBtn {
    width: 189px; flex: 0 0 189px; -webkit-flex: 0 0 189px; -ms-flex: 0 0 189px;
}
.btns .blueBtn {
    width: 191px; flex: 0 0 191px; -webkit-flex: 0 0 191px; -ms-flex: 0 0 191px;
}
.search__form {
    width: 100%; height: auto;
}
.input-success {
    color: #32B144!important;
}
.input-error {
    width: 100%; height: auto; margin: 10px 0 20px 0;
}
.input-error p {
    font-weight: 400; font-size: 16px; line-height: 19px; color: #FC3016;
}
.input-group {
    width: 100%; height: auto; margin: 0 0 20px 0;
}
.lastInputGroup {margin: 0;}
.input-group label {
    font-weight: 400; font-size: 16px; line-height: 19px; color: #333333; margin: 0 0 10px 0;
}
.input-group input[type="text"], .input-group input[type="tel"], .input-group input[type="email"], .input-group select {
    background: #FFFFFF; border: 1px solid rgba(51, 51, 51, 0.3); border-radius: 6px; width: 100%; height: 48px;
    line-height: 46px; font-weight: 400; font-size: 16px; color: #333333; outline: none; -ms-outline: none; -moz-outline: none; -webkit-outline: none;
    transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all; padding: 0 18px;
}
.input-group select {
    background: #FFFFFF url("../img/arrow.png") no-repeat right 20px center; -webkit-appearance: none; -moz-appearance: none; appearance: none;
}
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder { color: rgba(51, 51, 51, 0.3); }
input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder { color: transparent; }
.input-group input[type="text"]:focus,.input-group input[type="text"]:active,
select:focus, select:active, textarea:focus, textarea:active {
    border: 1px solid #333333;
}
input[type="checkbox"], input[type="radio"] {
    display: none;
}
label.checkboxLabel, label.radioLabel, label.chkboxLabel {
    font-weight: 400; font-size: 16px; line-height: 19px; color: #333333; position: relative; display: block; padding: 0 0 0 31px; cursor: pointer;
}
label.checkboxLabel {
    line-height: 48px;
}
label.sml {
    line-height: 19px!important;
}
label.checkboxLabel::before, label.radioLabel::before, label.chkboxLabel::before {
    width: 21px; height: 21px; border: 1px solid #BDBDBD; background: #FFFFFF; position: absolute; left: 0; top: 50%; margin: -10.5px 0 0 0; content: "";
}
label.checkboxLabel::before, label.chkboxLabel::before {
    border-radius: 4px;
}
label.sml::before {
    top: 0; margin: 0;
}
label.radioLabel::before {
    border-radius: 100%;
}
input[type="checkbox"]:checked + label::before {
    background: #0070B9 url("../img/checked.png") no-repeat center; border: 1px solid #0070B9;
}
input[type="radio"]:checked + label::before {
    border: 1px solid #0070B9; background: #0070B9; background-position: center;
    outline-offset: 3px; outline: 1px solid #0070B9; width: 15px; height: 15px; left: 3px; margin: -7.5px 0 0 0;
}
input[type="radio"]:checked + label {
    color: #2D9CDB;
}
.textarea__block {
    width: 100%; height: auto; position: relative;
}
.input-group sup {
    color: #FC3016;
}
.snoska {
    font-weight: 400; font-size: 12px; line-height: 15px; color: #FC3016; display: block; margin: 0 0 20px 0;
}
.edu label {
    display: block;
}
.select-group {
    width: 100%;
}
.p10 {
    padding: 10px 0 0 0;
}
.checkboxLabel a {
    color: #0070B9;
}
.input-group textarea {
    background: #FFFFFF; border: 1px solid rgba(51, 51, 51, 0.3); border-radius: 6px; width: 100%; height: 110px;
    line-height: 19px; font-weight: 400; font-size: 16px; color: #333333; outline: none; -ms-outline: none; -moz-outline: none; -webkit-outline: none;
    transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all; padding: 15px 18px 43px 18px;
}
.textarea__block span {
    font-weight: 400; font-size: 16px; line-height: 19px; color: #2D9CDB; cursor: pointer; position: absolute; bottom: 14px; right: 16px;
}
.inputError {
    font-weight: 400; font-size: 16px; line-height: 19px; color: #FC3016; height: auto;
}
.radioGroup {
    width: 170px; flex: 0 0 170px; -webkit-flex: 0 0 170px; -ms-flex: 0 0 170px; position: relative; margin: 0 50px 0 0;
}
.answersGroup {
    width: 100%; position: relative; margin: 20px 0 40px 0;
}
.answersGroup label.radioLabel {
    margin: 0 0 20px 0!important;
}
.keyInput {
    width: 327px; animation-name: fadeIn; opacity: 1; visibility: visible; animation-duration: 0.2s; animation-timing-function: linear;
}
.keyInput.hide {
    animation-name: fadeOut; opacity: 0; visibility: hidden; height: 0; flex: 0 0 auto; animation-duration: 0s;
}
@keyframes fadeIn {
    from {
        opacity: 0; visibility: hidden;
    }
    to {
        opacity:1; visibility: visible;
    }
}
@keyframes fadeOut {
    from {
        opacity: 1; visibility: visible;
    }
    to {
        opacity:0; visibility: hidden;
    }
}
.questionText {
    font-weight: 400!important; font-size: 16px!important; line-height: 19px!important; color: #333333; margin: 0!important; text-align: left!important;
}
.testResultInfo {
    width: 100%; height: auto; position: relative;
}
.testResultInfo img {
    width: 72px; height: auto; display: block; margin: 0 auto;
}
.testResultInfo h2 {
    margin: 19px 0 20px 0; text-align: center;
}
.testResultInfo p {
    font-weight: 400; font-size: 16px; line-height: 19px; text-align: center; color: #333333; margin: 0;
}
.testResultInfo .defaultBtn {
    margin: 19px auto; width: 168px;
}
.testResultInfo .blueBtn {
    margin: 0 auto; display: block;
}
.inp {
    width: 100%; height: auto;
}
.inputUserName {
    width: 360px;
}
.inputDate {
    width: 160px;
}
.dtInput {
    width: 100%; position: relative;
}
.calendarIcon {
    width: 24px; height: 24px; position: absolute; right: 12px; top: 12px; background: url("../img/calendar-icon-24x24.png") no-repeat center;
}

/* modal */
.modal__ {
    width: 100%; height: 100%; position: fixed; opacity: 0; visibility: hidden; z-index: 10; background: transparent;
    transition: 0.3s ease all; -webkit-transition: 0.3s ease all; -moz-transition: 0.3s ease all;
}
.modal__.show {
    opacity: 1; visibility: visible;
}
.modal__content {
    top: 50%; left: 50%; position: absolute; z-index: 11; animation-duration: 0.4s; animation-timing-function: linear;
    transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%);
    opacity: 0; visibility: hidden; width: 805px; height: auto; max-height: calc(100% - 50px); overflow-y: auto;
    padding: 60px 127px; background: #FFFFFF;
}
.overlay__ {
    width: 100%; height: 100%; position: absolute; opacity: 0; visibility: hidden; z-index: 10; background: rgba(0, 0, 0, 0.8);
    transition: 0.3s ease all; -webkit-transition: 0.3s ease all; -moz-transition: 0.3s ease all;
}
.modal__.show .overlay__ {
    opacity: 1; visibility: visible;
}
@keyframes fadeInM {
    from {
        opacity: 0; visibility: hidden;
    }
    to {
        opacity:1; visibility: visible;
    }
}
.modal__.show .modal__content, .newAddressModal__.show .newAddress__formWrap {
    animation-name: fadeInM; opacity: 1; visibility: visible;
}
@keyframes fadeOutM {
    from {
        opacity: 1; visibility: visible;
    }
    to {
        opacity:0; visibility: hidden;
    }
}
.modal__ .modal__content, .newAddressModal__ .newAddress__formWrap {
    animation-name: fadeOutM; opacity: 0; visibility: hidden;
}
.modalLoader {
    width: 100px; height: 100px; position: fixed; left: 50%; top: 50%; z-index: 11; margin: -50px 0 0 -50px;
    background: url("../img/modal-loader.svg") no-repeat center; opacity: 0; visibility: hidden;
}
.modal__ .modalLoader.show{
    opacity: 1; visibility: visible;
}
.formContent h3 {
    font-weight: 500; font-size: 26px; line-height: 31px; color: #333333; margin: 0 0 30px 0;
}
.formContent h4 {
    font-weight: 500; font-size: 22px; line-height: 27px; color: #333333; margin: 0 0 20px 0; padding: 10px 0 0 0;
}
input.is-invalid {
    border-color: #dc3545; padding-right: calc(1.5em + .75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat; background-position: right calc(.375em + .1875rem) center;
    background-size: calc(.75em + .375rem) calc(.75em + .375rem); background-color: #fff;
}
.invalid-feedback {
    display: none; width: 100%; margin-top: .25rem; font-size: .875em; color: #dc3545;
}
.is-invalid~.invalid-feedback {
    display: block;
}
.captcha__image-reload {
    display: flex; align-items: center; margin-bottom: 0.5rem;
}
.captcha__image {
    border-radius: 0.25rem;
}
.captcha__refresh {
    margin-left: 0.5rem;
}
.captcha__refresh::before {
    content: ""; width: 20px; height: 20px; display: inline-block;
    background: url("../img/reload.png") no-repeat center; cursor: pointer;
}
.captcha__group {
    margin-bottom: 1rem;
}
.messageStatus {
    position: absolute; left: 0; top: 50%;
    transform: translate(0, -50%); -webkit-transform: translate(0, -50%); -ms-transform: translate(0, -50%);
    padding: 0 190px;
}
.messageStatus img {
    width: 72px; height: 72px; margin: 0 auto 20px auto; display: block;
}
.messageStatus h3 {
    font-weight: 500; font-size: 26px; line-height: 31px; text-align: center; color: #333333; margin: 0 0 15px 0;
}
.messageStatus p {
    font-weight: 400; font-size: 16px; line-height: 19px; text-align: center; color: #333333; margin: 0;
}
.messageStatus .defaultBtn {
    width: 168px; margin: 33px auto 0 auto; display: block;
}
.closeModal {
    width: 40px; height: 40px; background: url("../img/close-dark-40x40.png") no-repeat center; cursor: pointer;
    background-size: 40px; position: absolute; right: 0; top: 0;
}