@import url('https://fonts.googleapis.com/css?family=Roboto:400,500,700&subset=cyrillic');/* -------------------------------------- css reset -------------------------------------- */html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video, input, select, textarea {  margin: 0;  padding: 0;  font-size: 100%;  vertical-align: baseline;  box-sizing: border-box;  -webkit-box-sizing: border-box;  -moz-box-sizing: border-box;}article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {  display: block;}blockquote, q {  quotes: none;}blockquote:before, blockquote:after, q:before, q:after {  content: '';}table {  border-collapse: collapse;  border-spacing: 0;}input, select, textarea, button {  outline: none;  resize: none;  -webkit-appearance: none;  -moz-appearance: none;}input[type="submit"] {  cursor: pointer;  border: none;}select::-ms-expand {  display: none;}ul {  margin-left: 1rem;}details {  border: 1px solid #e4e4e4;  margin-bottom: 1rem;  padding: 1rem;}details summary {  cursor: pointer;}details[open] summary {  margin-bottom: 1rem;}/* -------------------------------------- base layout -------------------------------------- */html, body {  height: 100%;  margin: 0;  padding: 0;}body {  line-height: 1;  font-family: 'Roboto', sans-serif;  font-size: 18px;  background: #F2F2F2;  background-size: contain;  font-weight: 400;  color: #000;}#wrap {  overflow: hidden;}#page {  position: relative;  min-height: 100%;}.cnt {  max-width: 1170px;  margin-left: auto;  margin-right: auto;}.clr:after {  content: '.';  display: block;  clear: both;  visibility: hidden;  height: 0;}*::selection {  background-color: rgba(28, 133, 232, 0.1);}.flx, .flx_list {  display: flex;  display: -webkit-flex;  display: -moz-flex;  display: -o-flex;  flex-direction: row;  flex-wrap: wrap;  justify-content: space-between;}.flx_list:after {  content: '';  display: flex;  width: auto;}/* -------------------------------------- typography -------------------------------------- */a {  color: #000;  text-decoration: none;  outline: none;}a:hover {  transition: .2s ease;  -webkit-transition: .2s ease;  -moz-transition: .2s ease;  -o-transition: .2s ease;}.highlight-links a {  color: rgb(252, 0, 0);  border: none;}.highlight-links a:hover {  color: rgb(200, 0, 0);}hr {  display: block;  border: none;  height: 1px;  background: #e1e1e1;}strong {  font-weight: 600;}.link, .bodyfield a {  color: #76009d;  border-bottom: 1px solid #76009d;}.link:hover, .bodyfield a:hover {  color: #4d0066;  border-bottom: 1px solid #4d0066;  transition: .2s ease;  -webkit-transition: .2s ease;  -moz-transition: .2s ease;  -o-transition: .2s ease;}.btn {  display: inline-block;  position: relative;  overflow: hidden;  background: #ffe422;  height: 40px;  line-height: 38px;  border-radius: 30px;  -webkit-border-radius: 30px;  -moz-border-radius: 30px;  font-size: 14px;  z-index: 2;  font-weight: 600;  cursor: pointer;  padding: 0 25px;  text-align: center;  border: 2px solid #ffe422;}.btn:hover {  background-color: #DEC515;  border-color: #DEC515;  transition: .2s ease;  -webkit-transition: .2s ease;  -moz-transition: .2s ease;  -o-transition: .2s ease;}.btn:active {  background-color: #fff;  color: #333333;  border-color: #ffe422;}.btn::selection {  background: transparent;}.btn_wrap {  text-align: center;}.btn:hover input {  color: #fff;}.btn:active input {  color: #0d3c6d;}.btn input {  background: none;  color: #fff;  line-height: 40px;  border: none;  font-family: 'Roboto', sans-serif;  font-weight: 600;}/* -------------------------------------- forms -------------------------------------- */input.error, textarea.error, select.error {  background-color: #ffcece;}.modals {  display: none;  position: fixed;  top: 0;  left: 0;  width: 100%;  height: 100%;  justify-content: center;  align-items: center;  z-index: 99;}.modals.visible {  display: flex;}.modal_overlay {  display: none;  position: fixed;  z-index: 10;  top: 0;  left: 0;  width: 100%;  height: 100%;  background: rgba(0, 0, 0, .2);  transition: .3s ease;  -webkit-transition: .3s ease;  -moz-transition: .3s ease;}.modal_overlay.visible {  display: block;  animation: overlay .3s;  -webkit-animation: overlay .3s;}@keyframes overlay {  from {    opacity: 0;  }  to {    opacity: 1;  }}@-webkit-keyframes overlay {  from {    opacity: 0;  }  to {    opacity: 1;  }}.modal_form {  display: none;  position: relative;  background: #fff;  width: 600px;  padding: 40px;  border-radius: 5px;  -webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.37);  box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.37);  overflow-y: auto;  z-index: 99;}.modal_form.visible {  animation: modal .3s;  -webkit-animation: modal .3s;  display: block;}@keyframes modal {  from {    opacity: 0;    top: 2rem;  }  to {    opacity: 1;    top: 0;  }}@-webkit-keyframes modal {  from {    opacity: 0;    top: 2rem;  }  to {    opacity: 1;    top: 0;  }}.modal_form .btn {  margin-top: 40px;}.modal_form__heading .title {  font-size: 18px;  line-height: 1.6;  margin-bottom: 10px;  padding-right: 2rem;}.modal_form__heading .subtitle {  font-size: 16px;  line-height: 25px;}.modal_form .close_icon {  width: 40px;  height: 40px;  cursor: pointer;  position: absolute;  top: 45px;  right: 30px;}.modal_form .close_icon:before {  content: '';  position: absolute;  top: -14px;  left: 0;  width: 30px;  height: 30px;  cursor: pointer;  z-index: 9;}.modal_form .close_icon span {  position: absolute;  display: block;  width: 30px;  height: 4px;  background-color: #ffe422;}.modal_form .close_icon span:first-child {  transform: rotate(45deg);  -webkit-transform: rotate(45deg);  -moz-transform: rotate(45deg);  -o-transform: rotate(45deg);}.modal_form .close_icon span:last-child {  transform: rotate(-45deg);  -webkit-transform: rotate(-45deg);  -moz-transform: rotate(-45deg);  -o-transform: rotate(-45deg);}.modal_form h2 {  font-size: 24px;  margin-bottom: 40px;  padding: 0 40px 0 0;}.form-item {  position: relative;  margin-bottom: 30px;}.form-item input,.form-item select {  position: relative;  height: 40px;  line-height: 40px;  font-size: 16px;  font-family: 'Roboto', sans-serif;  padding: 0 15px;  border: none;  border-bottom: 2px solid #000;  -webkit-appearance: none;  -moz-appearance: none;  font-weight: 100;  width: 100%;  color: #000;}.form-item input:focus,.form-item select:focus {  border-color: #000;}.form-item select option:first-child {  display: none;}.modal_form input[type="submit"] {  padding: 0 60px;}.personal_data {  clear: both;  margin-top: 20px;}.checkbox {  display: inline-block;  vertical-align: middle;  width: 16px;  height: 16px;  background: url(../img/checkbox.png) no-repeat;  cursor: pointer;}.checkbox.active {  background-position: 0 -38px;}.personal_data__text {  font-size: 13px;  display: inline-block;  width: 85%;  vertical-align: middle;  margin-left: 10px;  cursor: pointer;}#agreement {  width: 800px;  margin-left: -400px;  overflow-y: scroll;  padding: 30px;  height: 800px;}.agreement__text p {  margin-bottom: 10px;  font-size: 14px;  line-height: 20px;}/* -------------------------------------- form -------------------------------------- */.form {  max-width: 820px;  margin: 80px auto;  border-top: 8px solid #ffe422;  background-color: #fff;  border-radius: 5px;  padding: 35px;  -webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.37);  box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.37);}h1 {  font-size: 30px;  font-weight: 400;  margin-bottom: 35px;}.question {  margin-bottom: 1.5rem;  margin-top: 1.5rem;  padding-top: 1.5rem;  border-top: 1px solid #e4e4e4;}.question__title {  font-size: 20px;  line-height: 30px;  margin-bottom: 20px;}.question__title:after {  content: ' *';  color: #db4437;}.question.error .question__title {  color: #db4437;}.question__description {  font-size: 1rem;  font-weight: 600;  line-height: 1.6;}.question__description + .answers {  margin-top: 1.5rem;}.answers {  margin-top: 0.625rem;}.answer {  position: relative;  display: block;  padding-left: 35px;  margin-bottom: 15px;  font-size: 16px;  line-height: 24px;  cursor: pointer;}.answer:before {  content: '';  position: absolute;  top: 0;  left: 0;  width: 18px;  height: 18px;  border: 2px solid rgba(0, 0, 0, 0.54);  border-radius: 50%;  -webkit-border-radius: 50%;  -moz-border-radius: 50%;  transition: .3s ease;}.answer--checkbox:before {  border-radius: 5px;}.answer:hover:before,.answer.active:before {  border-color: rgb(252, 0, 0);}.answer:after {  content: '';  position: absolute;  top: 5px;  left: 5px;  width: 12px;  height: 12px;  background-color: rgb(252, 0, 0);  border-radius: 50%;  -webkit-border-radius: 50%;  -moz-border-radius: 50%;  opacity: 0;  transition: .3s ease;}.answer.active:after {  opacity: 1;}.answer--options {  display: grid;  grid-template-columns: 1fr 4rem;  gap: 1rem;  align-items: center;  padding-left: 0;  cursor: default;}.answer--options:before,.answer--options:after {  display: none;}.answer--options select {  border-radius: 5px;  text-align: center;}.answer--options select option {  display: block !important;  text-align: center;}.answers--draggable .answer {  padding: 15px 30px 15px 50px;  border: 1px solid #e1e1e1;  border-radius: 3px;  margin-bottom: 6px;}.answers--draggable .answer:before {  top: 17px;  left: 15px;  background-image: url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0ic3ZnLWljb24iIHN0eWxlPSJ3aWR0aDogMS4wMDA5NzY1NjI1ZW07IGhlaWdodDogMWVtO3ZlcnRpY2FsLWFsaWduOiBtaWRkbGU7ZmlsbDogY3VycmVudENvbG9yO292ZXJmbG93OiBoaWRkZW47IiB2aWV3Qm94PSIwIDAgMTAyNSAxMDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTU4NS4wNzQ4NzYgMjMyLjQ3MDg1aC03My42MTg0MzQgMjM3LjQyNzI0M0w1MTEuMTIwNjg2IDAuNzQzNDU5IDI3NS4xODgzNTUgMjMyLjQ3MDg1aDE2My44MDA4MTZ2MjE2LjEyMjc0NEgyMTguMTQ5ODU4djE0My40Nzk2MDJoMjIwLjgzOTMxM3YyMTYuOTA2MTc1aDE0Ni4wODU3MDVWNTkyLjA3MzE5NmgyMTkuMTIwNTYzVjQ0OC41OTM1OTRoLTIxOS4xMjA1NjNWMjMyLjQ3MDg1eiBtLTczLjkwNjIyNSA3OTAuMDQxMTVsMjE5Ljk4MzkzNi0yMTMuNTMyNjI5SDI5Mi45MTE0NmwyMTguMjU3MTkxIDIxMy41MjQ2MzV6TTAuNzQwMDQ5IDUxOS40NzgwMTdsMjE3LjQwOTgwOSAyMTYuMDc0NzhWMzA1LjExMzk5M0wwLjc0MDA0OSA1MTkuNDc4MDE3eiBtODAzLjQ1NTM5LTIxNC4zNjQwMjRWNzM1LjU0NDgwM2wyMTkuMTIwNTY0LTIxNi4wNzQ3OC0yMTkuMTIwNTY0LTIxNC4zNjQwMjR6IiAgLz48L3N2Zz4=);  border: none;  opacity: .2;}.answers--draggable .answer:hover:before {  opacity: 1;}.answers--draggable .answer:after {  display: none;}.form__results {  width: 100%;  height: 50px;  line-height: 50px;}/* -------------------------------------- form -------------------------------------- */#success {  width: 960px;  height: auto;  padding: 45px 60px 25px;}#success h2 {  text-align: left;  margin-bottom: 1.5rem;}#success h3 {  margin-bottom: 1.5rem;}#success .agreement__text {  font-size: 16px;  line-height: 24px;}.result {  display: none;  font-size: 16px;  line-height: 26px;  margin-bottom: 20px;}.result:last-child {  margin-bottom: 0;}.result p:not(:last-child) {  margin-bottom: .5rem;}/* -------------------------------------- mobile -------------------------------------- */.fullwidth-results #success {  width: 80%;  height: 80%;  margin: 0 !important;  border-radius: 0;  padding: 35px !important;}@media screen and (max-width: 1000px) {  .modal_form {    width: 100% !important;    height: 100% !important;    margin: 0 !important;    border-radius: 0;    padding: 35px !important;  }  #success h2 {    font-size: 20px;    padding-right: 40px;  }  .form {    margin: 80px 15px;    padding: 15px;    max-width: 100%;  }  h1 {    font-size: 24px;    line-height: 30px;    margin-bottom: 20px;  }  .question__title {    font-size: 18px;    margin-bottom: 0;  }  .answer {    margin-bottom: 10px;  }  .question {    margin-bottom: 15px;  }}/* -------------------------------------- result records -------------------------------------- */.results-listing {  max-width: 1200px;}.record {  display: grid;  grid-template-columns: 1.5fr 1fr 1fr 1fr;  grid-gap: 1rem;  font-size: 15px;}.record {  border: 1px solid #e4e4e4;  padding: 1.25rem 1rem;  border-radius: 3px;  margin-bottom: 1rem;}.record:last-child {  margin-bottom: 0;}@media screen and (max-width: 720px) {  .result-records__header {    display: none;  }  .record {    grid-template-columns: 1fr;  }}.questionnaires li {  margin-bottom: .5rem;}.question__disclaimer {  font-size: 1rem;  font-weight: 400;  line-height: 1.6;}.question__disclaimer p:not(:last-child) {  margin-bottom: .5rem;}