@font-face {
    font-family: 'Stolzl';
    src: url('fonts/Stolzl-Light.woff2') format('woff2'),
        url('fonts/Stolzl-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Stolzl';
    src: url('fonts/Stolzl-Medium.woff2') format('woff2'),
        url('fonts/Stolzl-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Stolzl';
    src: url('fonts/Stolzl-Bold.woff2') format('woff2'),
        url('fonts/Stolzl-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Stolzl';
    src: url('fonts/Stolzl-Thin.woff2') format('woff2'),
        url('fonts/Stolzl-Thin.woff') format('woff');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Stolzl Book';
    src: url('fonts/Stolzl-Book.woff2') format('woff2'),
        url('fonts/Stolzl-Book.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Stolzl';
    src: url('fonts/Stolzl-Regular.woff2') format('woff2'),
        url('fonts/Stolzl-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}




html {min-width: 320px;}

 body {position: relative; margin: 0; padding: 0px 0 0 0; height: auto !important; min-height: 100%; min-width:320px; font-family: 'Stolzl';}
 html > body {padding: 0;}
 img {padding: 0; margin: 0; border: 0;}
 .cleaner {clear: both;}
 a:hover {text-decoration: none;}
input::-moz-placeholder {opacity: 1; color: #A6A6A6;}
input::-webkit-input-placeholder {opacity: 1; color: #A6A6A6;}
input.error::-moz-placeholder {opacity: 1; color: color: #A6A6A6;}
input.error::-webkit-input-placeholder {opacity: 1; color: #A6A6A6;}
input:focus::-moz-placeholder {opacity: 0!important;}
input:focus::-webkit-input-placeholder {opacity: 0!important;}
textarea::-moz-placeholder {opacity: 0.5; color: #A6A6A6;}
textarea::-webkit-input-placeholder {opacity: 0.5; color: #A6A6A6;}
textarea:focus::-moz-placeholder {opacity: 0;}
textarea:focus::-webkit-input-placeholder {opacity: 0;}
a {color: #1A6AC7;}
* {outline: none; box-sizing: border-box; }
.all {width:100%; max-width: 1060px; margin: 0 auto; padding: 0 20px; box-sizing: border-box;}
form {padding: 0; margin: 0; border: 0;}
form fieldset {padding: 0; margin: 0; border: 0;}
button, a {transition: all 0.3s ease; -webkit-transition: all 0.3s ease;}



input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
   
    -webkit-appearance: none;
    margin: 0; 
}


.container {position: relative; width:100%; max-width: 100%; overflow: hidden; margin: 0 auto; min-height: 100vh; }
p {padding: 0; margin: 0;}

header {color: #363642; font-size: 34px; font-weight: 500; line-height: 40px; max-width: 1440px; margin: 0 auto 92px; padding: 18px 40px; display: flex; align-items: center; position: relative; z-index: 20;}
header .logo {margin: 0 78px 0 0; display: block;}

h2 {padding: 0; margin: 0 0 9px; display: flex; align-items: flex-start; color: #363642; font-size: 18px; font-weight: normal; line-height: 24px; width:100%;}
h2 .num {display: block; border-radius: 50%; width: 20px; height: 20px; margin: 2px 10px 0 0; line-height: 20px; text-align: center; background: #12B24B; font-size: 16px; color: #fff;}
h2 span:nth-child(2) {max-width: calc(100% - 30px);}
h2.no-num {padding-left: 30px; margin: 0 0 15px;}

h2 .error {display: none; color: #D5313A; font-size: 11px; line-height: 16px; margin: 6px 0 0 20px; }
.question.error h2 .error {display: block;}
.tquestion.error h2 .error {display: block;}


.question {width:100%; display: flex; flex-wrap: wrap;}

.tab-block {position: absolute; left: -99999px; opacity: 0; transition: opacity 0.3s ease;}
.tab-block.active {position: relative; left: 0; opacity: 1;}

.content {padding: 0 20px 180px; min-height: 300px; }
.content .tab-block {display: flex; flex-wrap: wrap;}
.content ul.steps {width: 100%; padding: 0; margin: 0 0 54px; display: flex; align-items: center; list-style-type: none;}
.content ul.steps li.arr {content: '';  width: 40px; height: 10px; background: url(img/steps-arr.svg) center center no-repeat; margin: 0 10px 0 7px;}
.content ul.steps li:first-child span:not(.active) {cursor: pointer;}
.content ul.steps span {font-size: 18px; color: #9797A9; text-decoration: none;}
.content ul.steps span.active {font-size: 26px; color: #363642;}
.content ul.steps span.disabled {cursor: default;}
.content ul.steps li:last-child span:not(.disabled) {cursor: pointer;}

.content .col {width: 50%; margin: 0 0 70px; }
.content .col.question {display: block;}

.content .rate-block {position: relative;}
.content .rate-block .cover {margin: 0 0 16px 30px; box-shadow: 0px 16px 40px 0px rgba(6, 91, 170, 0.20); width: 219px;}
.content .rate-block .cover img {display: block; width: 100%;}
.content .rate-block .rate-stars {padding: 0 0 0 30px;}
.content .rate-block .rate-stars .inputs {display: flex; margin-left: -4px;}
.content .rate-block .rate-stars .inputs label {width: 41px; height: 41px; margin: 0 5px 0 0; position: relative; display: block; cursor: pointer;}
.content .rate-block .rate-stars .inputs label input {position: absolute; left: -999999px;}
.content .rate-block .rate-stars .inputs label input:checked + .i:after {opacity: 1;}
.content .rate-block .rate-stars .inputs label input:checked + .i:before {opacity: 0;}
.content .rate-block .rate-stars .inputs label .i {transition: all 0.3s ease; display: block; width: 41px; height: 41px;}
.content .rate-block .rate-stars .inputs label .i:before {position: absolute; content: ''; display: block; top: 0; left: 0; width:100%; bottom: 0; background: url(img/star.svg) center center/34px auto no-repeat; transition: opacity 0.3s ease;}
.content .rate-block .rate-stars .inputs label .i:after {position: absolute; content: ''; display: block; top: 0; left: 0; width:100%; bottom: 0; background: url(img/star-fill.svg) center center/34px auto no-repeat; opacity: 0; transition: opacity 0.3s ease;}
.content .rate-block .rate-stars .inputs label.color .i:after {opacity: 1;}
.content .rate-block .rate-stars .inputs label.color .i:before {opacity: 0;}

.content .rate-block .error {display: none; max-width: 220px; position: absolute; color: #D5313A; font-size: 11px; line-height: 16px; margin: 3px 0 0 0; left: 30px; width: calc(100% - 30px);}
.content .error .rate-block .error {display: block;}

.content .sel-outer {padding: 0 0 0 30px; position: relative; z-index: 5;}
.content .sel-btn {z-index: 5; max-width: 455px; font-size: 16px; color: #9797A9; position: relative; height: 20px; line-height: 16px; border-bottom: 1px solid #363642; cursor: pointer;}
.content .sel-btn:after {width: 14px; height: 8px; content: ''; display: block; position: absolute; top: 4px; right: 0; background: url(img/sel-arr.svg) center center no-repeat; transition: all 0.3s ease;}
.content .open .sel-btn:after {transform: scale(1,-1);}

.content .sel-btn .list {font-size: 14px; color: #363642; width: calc(100% - 15px); display: none; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}
.content .sel-btn .list.visible {display: block;}
.content .sel-btn .list.visible + .t {display: none;}
.content .sel-btn .list.visible span:after {content: ', ';}
.content .sel-btn .list.visible span:last-child:after {content: '';}
.content .sel-outer .drop {position: absolute; top: -18px; left: -9999px; opacity: 0; transition: opacity 0.3s ease; width: calc(100% + 10px); border-radius: 30px; padding: 44px 20px 20px; background: #fff; box-shadow: 0px 4px 10px 0px rgba(6, 91, 170, 0.20);}
.content .sel-outer.open .drop {left: 10px; opacity: 1;}
.content .sel-outer .drop label {color: #363642; font-size: 16px; line-height: 26px; position: relative; cursor: pointer; display: flex; align-items: flex-start;}
.content .sel-outer .drop label input {position: absolute; left: -99999px;}
.content .sel-outer .drop label input:checked + .i {border-color: transparent;}
.content .sel-outer .drop label input:checked + .i:after {opacity: 1;}
.content .sel-outer .drop label + label {margin-top: 10px;}
.content .sel-outer .drop label .i {transition: all 0.3s ease; position: relative; border-radius: 7px; border: 1px solid #363642; width: 20px; height: 20px; margin: 2px 10px 0 0;}
.content .sel-outer .drop label .i:after {opacity: 0; transition: opacity 0.3s ease; box-sizing: border-box; content: ''; display: block; position: absolute; top: -1px; left: -1px; bottom: -1px; width:calc(100% + 2px); border-radius: 7px; background: #fff; border: 5px solid #12B24B;}
.content .sel-outer .drop label .t {display: inline; overflow: hidden; width: calc(100% - 30px); white-space: nowrap; text-overflow: ellipsis;}
.content .sel-outer .drop label.choose-all {border-bottom: 1px solid #363642; color: #9797A9;}
.content .sel-outer .drop label .hint {position: absolute; bottom: 100%; left: -9999px; line-height: 100%; opacity: 0; transition: opacity 0.3s ease; background: #fff; border-radius: 7px; font-size: 12px; box-shadow: 0px 4px 10px 0px rgba(6, 91, 170, 0.20); padding: 10px; }
.content .sel-outer .drop label:hover .hint {left: 20px; opacity: 1;}
.content .sel-outer .drop label:hover {z-index: 10;}

@media all and (min-width:1001px) {
.content .sel-outer .drop label.choose-all {line-height: 20px; padding-bottom: 2px; border-bottom: 1px solid #363642; color: #9797A9; font-size: 11px;}
.content .sel-outer .drop label.choose-all .i {width: 14px; height: 14px; border-radius: 4px; margin-right: 6px;}
.content .sel-outer .drop label.choose-all .i:after {border-radius: 4px;}
.content .sel-outer .drop label.choose-all + label {margin-top: 5px;}
}


.content .sel-outer .tags {margin: 15px 0 40px 0; display: flex; flex-wrap: wrap;}
.content .sel-outer .tags div {font-size: 11px; color: #363642; margin: 0 10px 10px 0; padding: 0 20px 0 10px; line-height: 20px; border-radius: 10px; background: #EDF3F9 url(img/del.svg) center right 8px no-repeat; cursor: pointer;}
.content .sel-outer .tags .reset {color: #363642; line-height: 20px; padding: 0 11px 0 0; font-size: 14px; height: 20px; background: url(img/del.svg) top 6px right no-repeat; text-decoration: none;}
.content .sel-outer .tags .reset:first-child {display: none;}


.content .choose-list .error {margin: 5px 0 0 0; display: none; color: #D5313A; font-size: 11px; line-height: 16px;}
.content .error .choose-list .error {display: block;}
.content .error .choose-list .sel-btn {border-color: #D5313A;}

.content .radio-btns {padding: 13px 0 0 30px;}
.content .radio-btns label {color: #363642; font-size: 16px; line-height: 26px; position: relative; cursor: pointer; display: flex; align-items: flex-start;}
.content .radio-btns label input {position: absolute; left: -99999px;}
.content .radio-btns label input:checked + .i {border-color: transparent;}
.content .radio-btns label input:checked + .i:after {opacity: 1;}
.content .radio-btns label + label, .content .radio-btns label + .radio-textfield {margin-top: 14px;}
.content .radio-btns label .i {transition: all 0.3s ease; position: relative; border-radius: 50%; border: 1px solid #363642; width: 20px; height: 20px; margin: 2px 10px 0 0;}
.content .radio-btns label .i:after {opacity: 0; transition: opacity 0.3s ease; box-sizing: border-box; content: ''; display: block; position: absolute; top: -1px; left: -1px; bottom: -1px; width:calc(100% + 2px); border-radius: 50%; background: #fff; border: 5px solid #12B24B;}
.content .radio-btns label .t {width: calc(100% - 30px);}

.content .check-btns {padding: 13px 0 28px 30px;}
.content .check-btns label {color: #363642; font-size: 16px; line-height: 26px; position: relative; cursor: pointer; display: flex; align-items: flex-start;}
.content .check-btns label input {position: absolute; left: -99999px;}
.content .check-btns label input:checked + .i {border-color: transparent;}
.content .check-btns label input:checked + .i:after {opacity: 1;}
.content .check-btns label + label, .content .radio-btns label + .radio-textfield {margin-top: 14px;}
.content .check-btns label .i {transition: all 0.3s ease; position: relative; border-radius: 5px; border: 1px solid #363642; width: 20px; height: 20px; margin: 2px 10px 0 0;}
.content .check-btns label .i:after {opacity: 0; transition: opacity 0.3s ease; box-sizing: border-box; content: ''; display: block; position: absolute; top: -1px; left: -1px; bottom: -1px; width:calc(100% + 2px); border-radius: 5px; background: #fff; border: 5px solid #12B24B;}
.content .check-btns label .t {width: calc(100% - 30px);}

.content .radio-textfield {display: flex; align-items: center;}
.content .radio-textfield.topmargin {margin-top: 40px;}
.content .radio-textfield input {width: calc(100% - 30px); max-width: 280px; font-size: 16px; border: 0; font-family: inherit; height: 24px; border-bottom: 1px solid #363642; color: inherit;}
.content .radio-textfield input::-moz-placeholder {opacity: 1; color: #9797A9;}
.content .radio-textfield input::-webkit-input-placeholder {opacity: 1; color: #9797A9;}

.content .btn-block {width:100%;}
.content .btn-block a.btn {line-height: 50px; padding: 0 20px; display: table; margin: 0 0 0 auto; background: #12B24B; text-decoration: none; color: #fff; font-size: 14px;}

.content .comm-block {display: none;}
.content .comm-block.visible {display: block;}
.content .textarea {position: relative; width:100%;}
.content .textarea .txtcount {position: absolute; bottom: 10px; right: 14px; color: #9797A9; font-size: 14px; line-height: 20px;}
.content .textarea .txtcount .t {color: #12B24B;}
.content .textarea textarea {overflow: hidden; height: 160px; font-family: inherit; padding: 10px 14px 20px; width: calc(100% - 30px); resize: none; margin-left: 30px; border: 1px solid #363642; color: #363642; font-size: 14px; line-height: 20px;}
.content .textarea textarea::-moz-placeholder {opacity: 0.4; color: #363642;}
.content .textarea textarea::-webkit-input-placeholder {opacity: 0.4; color: #363642;}
.content .textarea textarea:focus::-moz-placeholder {opacity: 0;}
.content .textarea textarea:focus::-webkit-input-placeholder {opacity: 0;}
.content .tab-block .tquestion > .textarea {margin-bottom: 74px; width: 100%;}
.content .tab-block .tquestion > .textarea textarea {height: 100px;}
.content .tab-block .tquestion {width: 100%;}

.bottom-line {height: 40px; position: absolute; bottom: 0; width: 100%; background: #12B24B;}



.thanks-block {min-height: 300px; position: fixed; top: 0; left: 0; bottom: 0; width: 100%; display: flex; align-items: center; justify-content: center;}
.thanks-block .into {width: 1048px; max-width: 100%; position: relative; padding-left: 106px;}
.thanks-block .into:before {content: ''; width: 318px; height: 240px; position: absolute; display: block; position: absolute; top: 0; left: 0; background: url(img/thanks-pic.svg) center center no-repeat;}
.thanks-block .into .bg {background: #EDF3F9; border-radius: 90px; padding: 70px 90px 70px 276px; color: #363642; font-weight: 500; font-size: 34px; line-height: 40px;}



@media all and (max-width:1200px) {
.thanks-block .into {width: 700px;}
.thanks-block .into .bg {padding-left: 220px; padding-right: 50px; font-size: 20px; line-height: 26px;}
.content {min-height: 300px;}
}

@media all and (max-width:1050px) {
h2 {flex-wrap: wrap;}
h2 .error {width:100%; padding-left: 30px;}
* {max-height: 9999999px; -webkit-appearance: none!important;}
header {margin-bottom: 60px; font-size: 26px; line-height: 30px;}
.content .col.mobfull {width:100%; margin-bottom: 100px;}
.content .col.mobfull.nomargin {margin-bottom: 0;}
.content .col.mobfull.nomargin .check-btns {padding-bottom: 2px;}
.content ul.steps {margin-bottom: 70px; display: block;}
.content ul.steps li.arr {display: none;}
.content ul.steps span.active {font-size: 34px; font-weight: 500;}
.content ul.steps li + li { margin-top: 20px;}
.content ul.steps li + li span:before {content: ''; display: block; position: absolute; left: 0; top: 20%; margin-top: -4px; width: 50px; height: 20px; background: url(img/mob-steps-arr.svg) center center no-repeat;}
.content ul.steps li + li span.active:before {filter: brightness(0);}
.content ul.steps li + li span {padding-left: 66px; position: relative; display: block;}
.content ul.steps li + li span.active {margin-top: -10px;}
h2 {margin-bottom: 30px; font-size: 26px; line-height: 30px;}
h2 .num {margin-top: -4px; width: 40px; height: 40px; line-height: 40px; font-size: 26px;}
h2 span:nth-child(2) {max-width: calc(100% - 50px);}
.content .rate-block .cover {margin-bottom: 40px; margin-left: 50px;}
.content .rate-block .cover {width: 474px; max-width: calc(100% - 50px);}
.content .rate-block .rate-stars {padding-left: 55px;}
.content .rate-block .rate-stars .inputs label  {width: 76px; height: 76px; margin-right: 22px;}
.content .rate-block .rate-stars .inputs label .i {width: 76px; height: 76px;}
.content .rate-block .rate-stars .inputs label .i:before, .content .rate-block .rate-stars .inputs label .i:after {background-size: 74px auto;}
.content .sel-btn {max-width: 100%; font-size: 18px; padding-bottom: 10px; height: 30px;}
.content .sel-outer {margin-bottom: -70px; padding: 10px 0 0 50px;}
.content .sel-btn:after {width: 50px; height: 40px; border-radius: 20px; background-color: #EDF3F9; top: -14px;}
.content .sel-outer .drop {padding-top: 74px; padding-left: 40px;}
.content .sel-outer .drop label.choose-all {font-size: 18px; padding-bottom: 10px;}
.content .sel-outer .drop label {font-size: 18px;}
.content .sel-btn .list {font-size: 18px; width: calc(100% - 50px);}
.content .sel-outer .tags {margin: 30px 0 50px;}
.content .sel-outer .tags div {font-size: 14px; line-height: 44px; padding: 0 40px 0 20px; border-radius: 22px; background-position: center right 18px; background-size: 12px auto;}
.content .sel-outer .tags .reset {font-size: 18px; line-height: 44px; height: 44px; background-size: 12px auto; padding: 0 20px 0 0; background-position: center right;}
h2.no-num {padding-left: 50px; margin-bottom: 20px;}
.content .comm-block {margin-top: 110px;}
.content .textarea textarea {font-size: 18px; line-height: 24px; margin-left: 50px; width: calc(100% - 50px);}
.content .btn-block a.btn {margin-right: auto;}
.content {padding-bottom: 120px;}
.content .check-btns {padding-left: 50px;}
.content .radio-textfield.topmargin {margin-top: 23px;}
.content .check-btns label + label, .content .radio-btns label + .radio-textfield {margin-top: 23px;}
header .logo {width: 240px; position: absolute; top: 30px;}
header {padding: 23px 30px; position: relative;}
header .site-title {padding-left: 50%; font-weight: normal;}

.thanks-block {position: relative; min-height: 1px; max-width: 708px; margin: 0 auto; padding-left: 0; padding-top: 30px;}
.thanks-block .into:before {position: relative; top: 0; left: 0; margin-left: 50px;}
.thanks-block .into {padding-left: 0;}
.thanks-block .into .bg {padding: 70px; font-size: 34px; line-height: 40px;}
.content .radio-btns label + label, .content .radio-btns label + .radio-textfield {margin-top: 23px;}
}

@media all and (max-width: 700px) {
header .logo {position: relative; top: auto; left: auto; width: 238px; margin: 0 0 30px;}
header {margin: 0 0 60px; font-size: 23px; line-height: 28px; padding: 20px 20px 0; display: block;}
header .site-title {padding-left: 0;}

h2 {display: block; margin-bottom: 25px;}
h2 .num {margin: 0 0 10px;}
.content .rate-block .cover {margin-left: 0; max-width:100%;}
.content .rate-block .rate-stars {padding-left: 0;}
.content .rate-block .rate-stars .inputs label {margin-right: 16px; width: 51px; height: 51px;}
.content .rate-block .rate-stars .inputs label .i {width: 51px; height: 51px;}
.content .rate-block .rate-stars .inputs label .i:before, .content .rate-block .rate-stars .inputs label .i:after {background-size: 48px auto;}
.content .col.mobfull {margin-bottom:70px;}
.content .sel-outer {padding-top: 25px; padding-left: 0;}

.content .sel-outer.open .drop {left: -15px; width: calc(100% + 30px); top: -15px; padding: 82px 15px 20px;}
.content .sel-outer .drop label {font-size: 16px;}
.content .sel-outer .drop label + label {margin-top: 23px;}
.content .sel-outer .drop label.choose-all {line-height: 20px; padding-bottom: 10px; border-bottom: 1px solid #363642; color: #9797A9; font-size: 16px;}
.content .sel-outer .drop label.choose-all .i {width: 14px; height: 14px; border-radius: 4px; margin-right: 6px;}
.content .sel-outer .drop label.choose-all .i:after {border-radius: 4px;}
.content .sel-btn {font-size: 16px;}
.content .sel-btn .list {font-size: 16px;}
.content .sel-outer .tags {display: block;}
.content .sel-outer .tags div {display: table; margin: 0 0 20px;}

h2.no-num {padding-left: 0;}
.content .textarea textarea {margin-left: 0; width: 100%;}
.content .textarea textarea {height: 270px;}
.content .col {width: 100%;}
.content .col.full360 {margin-bottom: 0;}
.content .col.full360 .radio-btns {padding-bottom: 10px;}
.content .radio-btns label {font-size: 18px;}
.content .radio-btns {padding-left: 0;}

.content ul.steps span.active {font-size: 28px;}
.content ul.steps li + li span:before {top: 6px;}
.content ul.steps li + li span.active:before {top: 12px;}

.content .check-btns {padding-left: 0;}
.content .check-btns label {font-size: 18px;}
.content .col.mobfull.nomargin .check-btns {padding-bottom: 11px;}
.content .radio-textfield input, .content .radio-textfield input {font-size: 18px;}

.thanks-block .into:before {width: 280px; height: 210px; margin: 0 auto; background-size: contain; background-repeat: no-repeat;}
.thanks-block .into .bg {padding: 40px; font-weight: normal; border-radius: 60px; font-size: 26px; line-height: 30px;}
}