@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Ubuntu:400,700&subset=cyrillic);
@keyframes animHideNext {
	to {
		opacity: 0;
		transform: translate3d(0, -500px, 0)
	}
}

@keyframes animShowNext {
	0% {
		opacity: 0;
		transform: translate3d(0, 500px, 0)
	}
}

@keyframes animHidePrev {
	to {
		opacity: 0;
		transform: translate3d(0, 500px, 0)
	}
}

@keyframes animShowPrev {
	0% {
		opacity: 0;
		transform: translate3d(0, -500px, 0)
	}
}

@keyframes animFadeIn {
	0% {
		opacity: 0
	}
	to {
		opacity: 1
	}
}

@keyframes animMove {
	0% {
		top: 100px
	}
}

@keyframes animMoveUpFromDown {
	0% {
		transform: translateY(100%)
	}
	to {
		transform: translateY(0)
	}
}

@keyframes animMoveUp {
	to {
		transform: translateY(-100%)
	}
}

@keyframes animMoveDownFromUp {
	0% {
		transform: translateY(-100%)
	}
	to {
		transform: translateY(0)
	}
}

@keyframes animMoveDown {
	to {
		transform: translateY(100%)
	}
}

.button {
	visibility: hidden;
	border-radius: 5px;
	font-weight: 400;
	background: #f1f1f1;
	transition: color 200ms, border-color 200ms
}

.button[disabled] {
	opacity: .3;
	pointer-events: none
}

.button:focus {
	outline: 0
}

.button.shown,
.button_shown {
	visibility: visible
}

.button_content_copy {
	position: absolute;
	right: 0;
	bottom: 0;
	padding: .3em 1em;
	border: 2px solid rgba(0, 0, 0, .2);
	color: rgba(0, 0, 0, .75);
	font-size: .75em
}

.button_content_continue:focus,
.button_content_continue:hover,
.button_content_copy:focus,
.button_content_copy:hover {
	background: #555555;
	border-color: #555555;
	color: #fff
}

.button_content_continue {
	position: absolute;
	right: 0;
	bottom: 0;
	margin: 0 40px 60px 0;
	padding: .6em 1.5em;
	border: 1px solid #dddddd;
	color: #888888;
	font-size: 1.25em
}

.description {
	margin-top: 1em;
	color: rgba(0, 0, 0, .5);
	font-size: .4em
}

.document,
.document__page {
	height: 100%;
	margin: 0;
	padding: 0;
	background: #fafafa
}

.document__page {
	color: #fff;
	font-weight: 400;
	font-size: 1em;
	font-family: Ubuntu, Arial, sans-serif;
	overflow: hidden;
	min-height: 590px
}

.error {
	position: absolute;
	bottom: 75%;
	left: 50%;
	z-index: 800;
	width: 70%;
	max-width: 960px;
	visibility: hidden;
	opacity: 0;
	transform: translate3d(-50%, -5px, 0);
	color: #eb7e7f;
	font-size: 1em;
	font-weight: 700
}

.error.shown,
.error_shown {
	visibility: visible;
	opacity: 1;
	transition: transform .3s, opacity .3s;
	transform: translate3d(-50%, 0, 0)
}

.field {
	position: relative;
	z-index: 1;
	margin: 0;
	padding: 0;
	border: 0
}

.field:hover {
	z-index: 999
}

.field.shown,
.field_current,
.field_shown {
	visibility: visible!important
}

.field__title,
.field_hide {
	pointer-events: none
}

.field__title {
	position: relative;
	display: inline-block;
	padding: 0 5px 1em 0;
	font-weight: 700
}

.fields {
	position: relative;
	top: 0;
	margin: 0 auto;
	padding: 0;
	list-style: none
}

.fields_next .field_hide,
.fields_prev .field_hide {
	visibility: visible
}

.fields_next .field_hide .animation__lower,
.fields_next .field_hide .animation__upper {
	animation: animHideNext .5s cubic-bezier(.7, 0, .3, 1) forwards
}

.fields_next .field_hide .animation__lower {
	animation-delay: .1s
}

.fields_next .field_shown .animation__lower,
.fields_next .field_shown .animation__upper {
	animation: animShowNext .5s cubic-bezier(.7, 0, .3, 1) both .15s
}

.fields_next .field_shown .animation__lower {
	animation-delay: .25s
}

.fields_prev .field_hide .animation__lower,
.fields_prev .field_hide .animation__upper {
	animation: animHidePrev .5s cubic-bezier(.7, 0, .3, 1) forwards
}

.fields_prev .field_hide .animation__upper {
	animation-delay: .1s
}

.fields_prev .field_shown .animation__lower,
.fields_prev .field_shown .animation__upper {
	animation: animShowPrev .5s cubic-bezier(.7, 0, .3, 1) both .15s
}

.fields_prev .field_shown .animation__upper {
	animation-delay: .25s
}

.fs-form {
	position: relative;
	width: 100%;
	height: 100%;
	color: #555555
}

.fs-form__content {
	position: relative;
	text-align: left;
	font-size: 2em
}

.fs-form__content_full {
	top: 32%;
	margin: 0 auto;
	width: 70%;
	max-width: 960px
}

.fs-form__content_full .field {
	visibility: hidden
}

.fs-form__content_full .field__title:hover~.info,
.fs-form__content_full .info:hover {
	opacity: 1;
	transform: translateY(0);
	pointer-events: auto
}

.fs-form__content_full .field__title[data-info]::after {
	position: relative;
	display: inline-block;
	margin-left: 10px;
	width: 24px;
	height: 24px;
	border: 2px solid rgba(0, 0, 0, .4);
	color: rgba(0, 0, 0, .4);
	border-radius: 50%;
	content: "i";
	vertical-align: top;
	text-align: center;
	font-weight: 700;
	font-style: italic;
	font-size: 14px;
	font-family: Georgia, serif;
	line-height: 20px;
	cursor: pointer;
	pointer-events: auto
}

.fs-form__content_full .field__title[data-info]::before {
	position: absolute;
	bottom: 100%;
	left: 0;
	padding: 0 0 10px;
	min-width: 200px;
	content: attr(data-info);
	font-size: .4em;
	color: #6a7b7e;
	opacity: 0;
	transition: opacity .3s, transform .3s;
	transform: translate3d(0, -5px, 0);
	pointer-events: none
}

.fs-form__content_full .field__title[data-info]:hover::before {
	opacity: 1;
	transform: translate3d(0, 0, 0)
}

.fs-form__content_overview {
	box-sizing: border-box;
	padding: 2.5em 20% 6em;
	width: 100%;
	height: 100%;
	background: #fafafa;
	color: #3b3f45;
	font-size: 1.2em
}

.fs-form__content_overview .fields {
	display: none
}

.fs-form__content_overview .textarea {
	color: #3b3f45;
	font-weight: 400;
	font-size: 1.2em
}

.fs-form__content_overview .result,
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
	display: block
}

.fs-form__content_overview .description {
	color: rgba(0, 0, 0, .5);
	font-size: 1em
}

.fs-form__content_overview .link {
	border-bottom: 1px solid;
	color: #3b3f45;
	transition: border-color 200ms
}

.fs-form__content_overview .link:focus,
.fs-form__content_overview .link:hover {
	border-color: transparent;
	color: #3b3f45
}

.fs-form__content.shown,
.fs-form__content_shown {
	animation: animFadeIn .5s
}

.fs-form__content.shown .fields,
.fs-form__content_shown .fields {
	animation: animMove .5s
}

.fs-form__content .submit {
	display: none
}

.header {
	box-sizing: border-box;
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
	padding: 40px;
	width: 100%
}

.header__content,
.header__info {
	display: inline-block;
	vertical-align: middle
}

.header__content {
	margin: 0
}

.header__info {
	width: 25px;
	height: 25px;
	margin-left: 1.5em;
	border: 2px solid;
	color: #aaaaaa;
	font-size: 16px;
	line-height: 1.25;
	text-align: center;
	transition: color 250ms
}

.header__info:focus,
.header__info:hover {
	color: #555555
}

.header .link {
	color: #555555;
	border-bottom: 1px solid transparent
}

.header .link:focus,
.header .link:hover {
	border-color: rgba(255, 255, 255, .5)
}

.input {
	display: block;
	margin: 0;
	padding: 0 0 .15em;
	width: 100%;
	border: 0;
	border-bottom: 2px solid rgba(0, 0, 0, .2);
	background-color: transparent;
	color: #383838;
	text-overflow: ellipsis;
	font-weight: 700;
	font-size: 1.5em;
	border-radius: 0;
	overflow: auto;
	font-family: inherit;
	-webkit-appearance: none
}

.input[type=text]::-ms-clear {
	display: none
}

.input:invalid {
	box-shadow: none
}

.input:focus {
	background-color: #fff;
	outline: 0
}

.input:focus:placeholder {
	color: transparent
}

.input::placeholder {
	color: #dadede
}

.input_type_number,
.input_type_pin {
	-moz-appearance: textfield
}

.input_type_number::-webkit-inner-spin-button,
.input_type_number::-webkit-outer-spin-button,
.input_type_pin::-webkit-inner-spin-button,
.input_type_pin::-webkit-outer-spin-button {
	-webkit-appearance: none
}

.js .fs-form__content_full .field {
	position: absolute;
	width: 100%
}

.link {
	outline: 0;
	color: rgba(0, 0, 0, .3);
	text-decoration: none
}

.link:focus,
.link:hover {
	color: #5abd76
}

.main {
	display: block;
	overflow: hidden
}

.message-final {
	visibility: hidden
}

.message-final.shown,
.message-final_shown,
.nav-dots.shown {
	visibility: visible
}

.nav-dots {
	position: absolute;
	top: 50%;
	right: 60px;
	left: auto;
	visibility: hidden;
	transform: translateY(-50%)
}

.nav-dots_shown {
	visibility: visible
}

.nav-dots__item {
	position: relative;
	display: block;
	padding: 0;
	margin: 16px 0;
	width: 16px;
	height: 16px;
	border: 0;
	border-radius: 50%;
	background: 0 0;
	transition: transform .3s ease, opacity .3s ease
}

.nav-dots__item::after,
.nav-dots__item::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background-color: rgba(0, 0, 0, .5);
	text-indent: 0;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden
}

.nav-dots__item::after {
	background-color: rgba(0, 0, 0, .4);
	transform: perspective(1000px) rotate3d(0, 1, 0, 180deg)
}

.nav-dots__item:hover::before,
.nav-dots__item_current::before {
	background: #5abd76
}

.nav-dots__item:focus {
	outline: 0
}

.nav-dots__item[disabled] {
	opacity: .3;
	pointer-events: none
}

.nav-dots__item_current {
	transform: perspective(1000px) rotate3d(0, 1, 0, 180deg)
}

.no-js .fs-form__content {
	padding: 0 0 6em
}

.no-js .field {
	margin: 1em 0 2em;
	padding: 0 0 2em;
	visibility: visible;
	border-bottom: 2px solid rgba(0, 0, 0, .1)
}

audio,
canvas,
video {
	display: inline-block
}

audio:not([controls]) {
	display: none;
	height: 0
}

[hidden] {
	display: none
}

html {
	font-family: sans-serif;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%
}

body,
figure {
	margin: 0
}

a:focus {
	outline: thin dotted
}

a:active,
a:hover {
	outline: 0
}

h1 {
	font-size: 2em;
	margin: .67em 0
}

abbr[title] {
	border-bottom: 1px dotted
}

b,
strong {
	font-weight: 700
}

dfn {
	font-style: italic
}

hr {
	box-sizing: content-box;
	height: 0
}

mark {
	background: #ff0;
	color: #000
}

code,
kbd,
pre,
samp {
	font-family: monospace, serif;
	font-size: 1em
}

pre {
	white-space: pre-wrap
}

q {
	quotes: "“" "”" "‘" "’"
}

small {
	font-size: 80%
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline
}

sup {
	top: -.5em
}

sub {
	bottom: -.25em
}

img {
	border: 0
}

svg:not(:root) {
	overflow: hidden
}

fieldset {
	border: 1px solid silver;
	margin: 0 2px;
	padding: .35em .625em .75em
}

legend {
	border: 0;
	padding: 0
}

button,
input,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	margin: 0
}

button,
input {
	line-height: normal
}

button,
select {
	text-transform: none
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
	-webkit-appearance: button;
	cursor: pointer
}

button[disabled],
html input[disabled] {
	cursor: default
}

input[type=checkbox],
input[type=radio] {
	box-sizing: border-box;
	padding: 0
}

input[type=search] {
	-webkit-appearance: textfield;
	box-sizing: content-box
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
	-webkit-appearance: none
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0
}

textarea {
	overflow: auto;
	vertical-align: top
}

table {
	border-collapse: collapse;
	border-spacing: 0
}

.numbers {
	position: absolute;
	top: 0;
	right: 0;
	visibility: hidden;
	overflow: hidden;
	width: 2.5em;
	margin: 40px;
	color: rgba(0, 0, 0, .4);
	font-size: 2em;
	font-weight: 700;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	cursor: default
}

.numbers::after {
	content: "/";
	position: absolute;
	left: 0;
	width: 100%;
	opacity: .4;
	font-weight: 300;
	text-align: center
}

.numbers.shown,
.numbers_shown {
	visibility: visible
}

.numbers_shown-next .numbers__item_new {
	animation: animMoveUpFromDown .4s both
}

.numbers_shown-next .numbers__item_current {
	animation: animMoveUp .4s both
}

.numbers_shown-prev .numbers__item_new {
	animation: animMoveDownFromUp .4s both
}

.numbers_shown-prev .numbers__item_current {
	animation: animMoveDown .4s both
}

.numbers__item {
	float: right;
	width: 50%;
	text-align: center
}

.numbers__item_current {
	float: left
}

.numbers__item_new {
	position: absolute;
	left: 0;
	transform: translateY(100%)
}

.overview .fs-form {
	height: auto
}

.popup {
	position: fixed;
	z-index: 1000;
	right: 0;
	bottom: 0;
	width: 50%;
	padding: 15px 20px;
	transform: translateY(100%);
	box-shadow: 0 3px 10px rgba(0, 0, 0, .4);
	background: #24272b;
	transition: all 500ms 0s
}

.popup_shown {
	margin: 0 10px 10px 0;
	transform: none;
	transition: all 500ms 1s
}

.popup_fast {
	transition: all 500ms 0s
}

.popup__content {
	margin-bottom: 20px;
	font-size: .95em;
	line-height: 1.75
}

.popup__button {
	display: block;
	padding: 7px 40px;
	margin: auto;
	border: 2px solid #73b54e;
	color: #a0d976;
	background: #479124;
	transition: border-color 250ms
}

.popup__button:focus,
.popup__button:hover {
	color: #fff;
	background: #73b54e;
}

.progress {
	position: absolute;
	top: 0;
	visibility: hidden;
	width: 0%;
	height: .5em;
	background: #5abd76;
	transition: width .3s ease-in-out
}

.progress.shown,
.progress_shown {
	visibility: visible
}

.result {
	display: none;
	position: relative
}

.result__throbber,
.result__tip {
	font-weight: 700;
	font-size: 1.85em
}

.result__tip {
	display: none;
	margin-bottom: 1.5em;
	color: #3b3f45
}

.result__throbber {
	color: rgba(0, 0, 0, .2)
}

.result__again,
.result__button,
.result__desc,
.result__info,
.result__to-main,
.result_loaded .result__throbber {
	display: none
}

.result_loaded .result__button,
.result_loaded .result__desc,
.result_loaded .result__info,
.result_loaded .result__tip {
	display: block
}

.result_error .result__throbber {
	display: none
}

.result_error .result__tip {
	display: block;
	margin-bottom: .5em;
	color: #f00000
}

.result_again .result__again,
.result_error .result__to-main {
	display: inline
}

.result_again .result__to-main {
	display: none
}

.textarea {
	box-sizing: border-box;
	padding: .25em;
	width: 100%;
	height: 400px;
	border: 1px solid #dddddd;
	background-color: #fff;
	color: #383838;
	font-weight: 400;
	font-size: .65em;
	resize: none
}

.textarea_size_m {
	height: auto;
	max-height: 200px
}

.textarea:focus {
	outline: 0
}

.textarea::placeholder {
	color: rgba(0, 0, 0, .1)
}

@media screen and (max-width:52.5em) {
	.button_content_copy {
		bottom: -2em
	}
	.button_content_continue {
		right: 20px;
		bottom: 20px;
		width: 50px;
		height: 50px;
		padding: 50px 0 0 50px;
		margin: 0;
		border-radius: 50%;
		font-size: 0
	}
	.button_content_continue::before {
		content: "➡";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		font-size: 30px;
		line-height: 48px;
		text-align: center
	}
	.document__page {
		min-height: 500px
	}
	.error {
		bottom: 5em;
		left: 0;
		box-sizing: border-box;
		width: 100%;
		padding: 0 90px 0 2em;
		font-size: 1.5em;
		transform: translate3d(0, -5px, 0)
	}
	.error.shown,
	.error_shown {
		transform: translate3d(0, 0, 0)
	}
	.fs-form {
		font-size: 70%
	}
	.fs-form__content {
		top: 6em;
		right: 2em;
		left: 0;
		padding: 0 3.75em 0 1em;
		width: auto;
		font-size: 2em
	}
	.fs-form__content_overview {
		top: 0;
		right: 0;
		left: 0;
		padding: 1em;
		font-size: 1.6em
	}
	.fs-form__content_overview .textarea {
		font-size: 1.2em
	}
	.header {
		padding: 20px
	}
	.header__info {
		width: 22px;
		height: 22px;
		font-size: 14px
	}
	.nav-dots {
		right: 25px
	}
	.numbers {
		margin: 20px
	}
	.result__tip {
		margin-bottom: 1em
	}
	.textarea_size_m {
		max-height: 10em
	}
}

@media (max-width:52.5em) {
	.popup {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		width: auto
	}
	.popup_shown {
		top: 10px;
		left: 10px;
		right: 10px;
		bottom: 10px;
		margin: 0
	}
	.popup__button {
		display: inline-block;
		margin: 0
	}
}
