.quiz {
	padding: 0px 15px;
	margin: 25px 0px;
}

.quiz__title {
	margin-bottom: 15px;
}

.quiz__sub-title {
	font-size: 30px;
	max-width: 774px;
	line-height: 1.3;
	text-align: center;
	margin: 0px auto;
}

.quiz__top-right {
	margin-left: auto;
}

.step-form-wrapper {
	display: flex;
	padding: 70px 90px 100px 90px;
	background: #ffffff;
	position: relative;
	border-radius: 20px;
	margin-top: 45px;
	overflow: hidden;
}

.quiz__main {
	position: relative;
}

.quiz__main::after {
	display: block;
	content: "";
	margin: 0px auto;
	width: 96.5%;
	height: 12px;
	background-color: #69ccde;
	border-radius: 0px 0px 20px 20px;
}

.step-form-wrapper::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 1;
	width: 98.5%;
	height: 98.5%;
	border-radius: 20px;
	border: 1px solid rgba(0, 0, 0, 0.04);
	translate: -50% -50%;
	pointer-events: none;
}

.step-forms {
	width: 100%;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.step-row__title {
	text-align: center;
	font-size: 15px;
	line-height: 120%;
	margin-bottom: 18px;
}

.form-quiz {
	flex-grow: 1;
}

.form-step {
	height: 100%;
}

.form-step__body {
	height: 100%;
	display: flex;
	flex-direction: column;
}

.steps form {
	flex-grow: 1;
}

.step-row-block {
	margin-bottom: 40px;
	display: flex;
	align-items: center;
	position: relative;
	z-index: 2;
	gap: 50px;
}

.step-count {
	z-index: 1;
	line-height: 1;
	text-align: center;
}

.step-count span {
	font-weight: 600;
}

.step-row {
	border-radius: 14px;
	width: 100%;
	height: 16px;
	position: relative;
	overflow: hidden;
	background: rgba(238, 238, 238, 0.84);
	max-width: 460px;
}

#progress {
	position: absolute;
	left: 0;
	top: 0;
	width: 0%;
	height: 100%;
	border-radius: 14px;
	background: #eee;
	overflow: hidden;
	transition: 0.4s ease 0s;
}

#progress::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: #4cc8de url(../img/bg/lines.png);
	animation: moveIt 1.5s infinite linear;
}

.form-step {
	height: 100%;
}

.form-step {
	display: none;
}

.form-step-active {
	display: block;
}

.form-step__title {
	margin-bottom: 35px;
	font-weight: 700;
	line-height: 1.2;
	font-size: 36px;
	position: relative;
	z-index: 2;
}

.form-step__main {
	display: flex;
	flex-wrap: wrap;
	position: relative;
	z-index: 1;
	gap: 15px;
}

.form-step.with-decor .form-step__main {
	gap: 20px;
	max-width: 735px;
}

.form-step__decor {
	position: absolute;
	left: 49%;
	top: 22%;
	z-index: 0;
}

.form-step__decor.decor-2 {
	left: 4%;
	top: 0%;
}
.form-step__decor.decor-3 {
	left: 8.5%;
	top: auto;
	bottom: -6%;
}
.form-step__decor.decor-4 {
	left: 3%;
	top: auto;
	bottom: 0;
}

.form-step__main.many-elements {
	column-gap: 10px;
	row-gap: 25px;
}

.form-step__main.many-elements .form-step__block {
	width: calc((100% - 40px) / 5);
}

.form-step__block {
	position: relative;
	width: calc((100% - 45px) / 4);
	padding: 10px 22px 10px 40px;
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	overflow: hidden;
	margin-bottom: 0px;
	background-color: #f1f3f8;
	border-radius: 45px;
	min-height: 90px;
}

.form-step.with-decor .form-step__block {
	width: calc((100% - 20px) / 2);
}

.form-step__block._v2 {
	padding: 0px;
	background: none;
	border-radius: 0px;
	justify-content: stretch;
	gap: 13px;
	width: calc((100% - 45px) / 4);
	flex-direction: column;
}

.form-step__block-image {
	display: flex;
	position: relative;
	padding-bottom: 26px;
	width: 100%;
}

.form-step__main.many-elements .form-step__block-image {
	padding-bottom: 21px;
}

.form-step__main.many-elements .form-step__block-img {
	height: 144px;
}

.form-step__block-img {
	width: 50%;
	flex-grow: 1;
	height: 180px;
	border-radius: 13px;
	object-fit: cover;
}

.form-step__block._v2 .form-step__label-text {
	text-align: center;
}

.form-step__radio {
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	visibility: hidden;
}

.form-step__check-mark {
	width: 57px;
	height: 57px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #f6f8f9;
	color: #b3bbc1;
	border: 4px solid #fff;
	flex-shrink: 0;
	transition: 0.2s ease 0s;
	box-shadow:
		0 0 1px 0 rgba(0, 0, 0, 0.3),
		0px 10px 20px 0px rgba(0, 0, 0, 0.12);
}

.form-step__main.many-elements .form-step__check-mark {
	width: 46px;
	height: 46px;
}

.form-step__check-mark svg {
	width: 17px;
	height: 15px;
}

.form-step__block._v2 .form-step__check-mark {
	position: absolute;
	bottom: 0;
	left: 50%;
	translate: -50% 0%;
}

.form-step__radio:checked ~ .form-step__check-mark {
	background: #3aa5b8;
	box-shadow: 0 0 1px 0 rgba(58, 163, 182, 0.301) 0px 10px 20px 0px rgba(58, 163, 182, 0.12);
	color: #ffffff;
}

.form-step__radio:checked ~ .form-step__block-image .form-step__check-mark {
	background: #3aa5b8;
	box-shadow: 0 0 1px 0 rgba(58, 163, 182, 0.301) 0px 10px 20px 0px rgba(58, 163, 182, 0.12);
	color: #ffffff;
}

.form-step__radio:checked ~ .form-step__label-text {
	font-weight: 500;
}

.form-step__radio:checked ~ .form-step__block-image .form-step__label-text {
	font-weight: 500;
}

.form-step__label-text {
	font-size: 18px;
	line-height: 1.3;
}

.form-step__block._v2 .form-step__label-text {
	font-size: 18px;
}

.form-step__label-text.fz-22px {
	font-size: 22px;
}

.form-step__buttons {
	display: flex;
	gap: 15px;
	margin-top: auto;
	padding-top: 44px;
}

.form-step__button {
	padding: 33px 15px;
	border-radius: 45px;
	gap: 10px;
	width: 100%;
	overflow: hidden;
	max-width: 350px;
	font-size: 15px;
}

.form-step__button span {
	transition: 0.2s ease 0s;
}

.form-step__checkboxes {
	padding-top: 22px;
}

.form-step__checkbox-box {
	position: relative;
}

.form-step__checkbox-box:not(:last-child) {
	margin-bottom: 24px;
}

.form-step__checkmark {
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	visibility: hidden;
}

.form-step__checkbox-label {
	display: flex;
	gap: 12px;
	align-items: center;
}

.form-step__checkbox-label::before {
	content: "";
	width: 15px;
	height: 15px;
	outline: 1px solid #8f8f8f;
	border-radius: 2px;
}

.form-step__checkmark:checked ~ .form-step__checkbox-label::before {
	outline: 1px solid #303030;
	border: 2px #ffffff solid;
	background: #303030;
}

.form-step__main-final {
	display: flex;
}

.form-step__left-block {
	max-width: 460px;
}

.form-step__final-text {
	max-width: 355px;
	line-height: 120%;
}

.form-step__main-final .form-step__title {
	margin-bottom: 15px;
}

.form-step__mini-form {
	padding-top: 20px;
	max-width: 350px;
}

.form-step__form-title {
	font-size: 15px;
	line-height: 135%;
	margin-bottom: 15px;
}

.form-step__main-final .form-step__button {
	width: 100%;
	justify-content: center;
	padding: 35px;
}

.form-step-final__body {
	position: relative;
	z-index: 1;
}

.form-step-final__top {
	display: flex;
	gap: 30px;
	margin-bottom: 30px;
}

.form-step-final .input-wrapper {
	width: 100%;
	padding: 32px 36px;
}

.form-step-final__title {
	font-weight: 600;
	font-size: 34px;
	line-height: 1.333;
	padding-top: 20px;
}

.form-step-final__decor {
	position: absolute;
	right: 0;
	bottom: 0;
	max-width: 1003px;
	transform: translate(45%, 129px);
	max-width: 580px;
}

.form-step-final__center {
	display: flex;
	gap: 30px;
}

.form-step-final__text {
	max-width: 324px;
	font-size: 22px;
	line-height: 1.454;
}

.form-step-final__mini-form {
	margin-top: 30px;
	max-width: 360px;
}

.form-step-final__button {
	padding: 17px;
	margin-top: 10px;
	width: 100%;
}

.form-step-final__checkbox-box {
	margin-top: 25px;
	position: relative;
}

.form-step__left {
	max-width: 560px;
	position: relative;
	z-index: 2;
}
.form-step__list {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-bottom: 40px;
}

.quiz .form__right {
	width: 100%;
}

.form-step__item {
	font-size: 20px;
	line-height: 1.444;
}

.form-step__item span:first-child {
	font-weight: 700;
}

.form-step__load {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-bottom: 45px;
}
.form-step__load-text {
	font-size: 20px;
	line-height: 1.3;
	font-weight: 700;
}

.form-step__form-block {
	max-width: 1095px;
	width: 100%;
	position: relative;
	z-index: 2;
	display: none;
	background-color: #f4f4f2;
	margin-top: -200px;
	margin-left: auto;
	margin-right: auto;
	border-radius: 10px;
	padding: 55px 64px;
	overflow: hidden;
	box-shadow: rgba(0, 0, 0, 0.07) 0px 20px 60px 0px;
}

.form-step__form-block .form__decor-tel {
	position: absolute;
	left: 70%;
	bottom: 0;
	z-index: 0;
}

.quiz__main.end .form-step__form-block {
	display: block;
}

.quiz__main.end .form-quiz::after {
	display: block;
	content: "";
	height: 12px;
	background-color: #68c9dc;
	width: 85%;
	margin: 0px auto;
	border-radius: 0px 0px 20px 20px;
}

.quiz__main.end .form-step-active {
	padding-bottom: 100px;
}

.quiz .form__button,
.section-repair2 .form__button {
	font-size: 15px;
	padding: 19px 15px;
	width: 100%;
	max-width: 370px;
}

.quiz .form__body,
.section-repair2 .form__body {
	margin-top: 35px;
}

.quiz__main.end::after {
	display: none;
}

.form-step__load img {
	flex-shrink: 0;
}

.quiz .checkbox a,
.section-repair2 .checkbox a {
	color: #7bcbdc;
	text-decoration: underline;
}

.quiz input.form__input.input {
	max-width: 320px;
	height: 90px;
}

.quiz .checkbox label,
.section-repair2 .checkbox label {
	font-size: 12px;
	line-height: 1.3;
}

.quiz .checkbox input,
.section-repair2 .checkbox input {
	margin: -1px 10px 0 0;
}

/* .input{
	font-size: 18px;
	padding: 38px 42px;
	background-color: #fafbfc;
	border: 1px solid #f6f6f6;
	margin-bottom: 10px;
	width: 100%;
} */

.quiz .form__left,
.section-repair2 .form__left {
	max-width: 680px;
	position: relative;
	z-index: 1;
}

.section-repair2 .form__title,
.quiz .form__title {
	font-size: 36px;
	line-height: 1.2;
}

.form-step__absolut-top {
	position: absolute;
	font-size: 18px;
	line-height: 1.3;
	top: 67px;
	color: black;
	z-index: 1;
	max-width: 260px;
	left: 62%;
}

.form-step__absolut-top::after {
	width: 75px;
	height: 126px;
	content: "";
	position: absolute;
	top: 50%;
	left: 100%;
	background: url(../img/bg/figure.svg) center / contain no-repeat;
}

@keyframes moveIt {
	from {
		background-position: 0 center;
	}
	to {
		background-position: 2.4rem center;
	}
}

@media (hover: hover) {
	.form-step__button:hover span {
		transform: translateX(2px);
	}

	.form-step__block:hover .form-step__check-mark {
		background: #3aa5b8;
		box-shadow: 0 0 1px 0 rgba(58, 163, 182, 0.301) 0px 10px 20px 0px rgba(58, 163, 182, 0.12);
		stroke: #ffffff;
		color: #fff;
	}
}

@media (max-width: 1230px) {
	.form-step__label-text {
		font-size: 16px;
	}

	.step-form-wrapper {
		padding: 45px 62px;
		margin-top: 35px;
	}

	.quiz__sub-title {
		font-size: 26px;
	}

	.form-step__decor.decor-2 {
		top: auto;
		bottom: 0;
	}

	.form-step__form-block {
		max-width: 835px;
		margin-top: -140px;
		padding: 35px 34px;
	}

	.quiz .form__body,
	.section-repair2 .form__body {
		flex-wrap: nowrap;
	}

	.quiz .form__title,
	.section-repair2 .form__title {
		font-size: 32px;
	}

	.form-step__form-block .form__decor-tel {
		max-width: 200px;
		left: 75%;
	}

	.form-step__absolut-top {
		left: 70%;
	}

	.form-step__absolut-top::after {
		display: none;
	}

	.form-step__decor.decor-4 {
		left: 10%;
	}
}

@media (max-width: 991.98px) {
	.quiz__sub-title {
		font-size: 24px;
	}

	.form-step__load img {
		max-width: 100px;
	}

	.form-step__load-text {
		font-size: 18px;
		line-height: 1.3;
	}

	.quiz .form__title,
	.section-repair2 .form__title {
		font-size: 28px;
	}

	.form-step__decor.decor-2 {
		display: none;
	}

	.quiz__title {
		max-width: 600px;
		margin: 0px auto 10px auto;
	}

	.form-step__button {
		padding: 28px 15px;
		max-width: 320px;
	}

	.form-step__title {
		margin-bottom: 25px;
		font-size: 28px;
	}

	.step-form-wrapper {
		padding: 45px 62px;
	}

	.quiz {
		padding: 0px 10px;
	}

	.quiz__sub-title {
		font-size: 22px;
	}

	.step-row-block {
		flex-direction: column;
		gap: 15px;
		margin-bottom: 20px;
	}

	.form-step__main.many-elements {
		column-gap: 15px;
		flex-wrap: nowrap;
		overflow: auto;
		padding-bottom: 20px;
		margin-bottom: 5px;
	}

	.form-step__main.many-elements .form-step__block {
		flex-shrink: 0;
		width: 160px;
	}

	.quiz__main::after {
		height: 8px;
		width: 92%;
	}

	.form-step__block-img {
		height: 140px;
	}

	.form-step__block._v2 {
		width: calc((100% - 30px) / 3);
	}

	.form-step__title {
		margin-bottom: 20px;
		font-size: 26px;
	}

	.form-step__title br {
		display: none;
	}

	.form-step__label-text.fz-22px {
		font-size: 20px;
	}

	.form-step__block {
		padding: 10px 22px 10px 30px;
		min-height: 80px;
	}

	.form-step__item {
		font-size: 18px;
	}

	.form-step__list {
		gap: 6px;
		margin-bottom: 30px;
	}

	.form-step__absolut-top {
		display: none;
	}

	.form-step__left {
		max-width: 460px;
	}

	.form-step__form-block {
		max-width: 635px;
		margin-top: -140px;
		padding: 35px 25px;
	}

	.quiz .form__body,
	.section-repair2 .form__body {
		margin-top: 25px;
		align-items: center;
		flex-direction: column;
	}

	.form-step__form-block .form__decor-tel {
		display: none;
	}

	.form__right {
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.quiz input.form__input.input {
		max-width: 370px;
		height: 90px;
	}

	.quiz .form__title,
	.section-repair2 .form__title {
		margin-bottom: 25px;
	}
}

@media (max-width: 767.98px) {
	.form-step__decor {
		display: none;
	}

	.form-step__left {
		max-width: 100%;
	}

	.form-step__form-block {
		max-width: 90%;
		margin-top: -140px;
		padding: 35px 25px;
	}

	.quiz .form__title,
	.section-repair2 .form__title {
		font-size: 24px;
	}

	.form-step.with-decor .form-step__main {
		flex-direction: column;
	}

	.form-step__label-text.fz-22px {
		font-size: 18px;
	}

	.form-step__block {
		padding: 10px 10px 10px 20px;
		min-height: 70px;
	}

	.form-step__block-img {
		height: 140px;
	}

	.form-step__block._v2 .form-step__label-text {
		font-size: 16px;
	}

	.form-step__block._v2 {
		width: calc((100% - 20px) / 3);
	}

	.form-step__main {
		gap: 10px;
	}

	.step-row-block {
		gap: 10px;
		margin-bottom: 15px;
	}

	.form-step__check-mark {
		width: 47px;
		height: 47px;
	}

	.form-step__block-image {
		padding-bottom: 22px;
	}

	.quiz__top {
		flex-direction: column;
		align-items: center;
		text-align: center;
		gap: 20px;
	}

	.quiz__title {
		text-align: center;
	}

	.quiz__sub-title {
		font-size: 20px;
	}

	.quiz__top-right {
		margin-left: 0px;
	}

	.quiz {
		padding: 0px;
	}

	.step-form-wrapper {
		padding: 45px 22px;
	}

	.step-form-wrapper {
		margin-top: 25px;
	}

	.form-step.with-decor .form-step__main {
		gap: 15px;
	}

	.form-step.with-decor .form-step__block {
		width: calc((100% - 15px) / 2);
	}

	.form-step__label-text.fz-22px {
		font-size: 18px;
	}

	.form-step.with-decor .form-step__block {
		width: 100%;
	}
}

@media (max-width: 480px) {
	.step-row-block {
		gap: 0px;
	}

	.form-step.with-decor .form-step__main {
		gap: 10px;
	}

	.form-step__load {
		flex-direction: column;
	}

	.form-step__load-text br {
		display: none;
	}

	.form-step__item {
		font-size: 16px;
	}

	.form-step__load-text {
		font-size: 16px;
	}

	.quiz .form__title,
	.section-repair2 .form__title {
		font-size: 20px;
	}

	.form__title br {
		display: none;
	}

	.quiz .form__button,
	.section-repair2 .form__button {
		font-size: 13px;
		padding: 19px 10px;
		line-height: 1.4;
	}

	.form-step__main {
		justify-content: center;
	}

	.form-step__main.many-elements {
		justify-content: flex-start;
	}

	.form-step__form-block {
		padding: 25px 20px;
	}

	.quiz input.form__input.input {
		height: 74px;
		font-size: 16px;
		padding: 0px 20px;
	}

	.form-step__block._v2 {
		width: calc((100% - 10px) / 2);
		gap: 10px;
		min-width: 160px;
	}

	.form-step__main.many-elements .form-step__block-img {
		height: 120px;
	}

	.form-step__block-img {
		height: auto;
	}

	.form-step__block-image {
		padding-bottom: 18px;
	}

	.form-step__check-mark {
		width: 42px;
		height: 42px;
	}

	.form-step__check-mark svg {
		width: 14px;
		height: 12px;
	}

	.form-step__list {
		gap: 8px;
		margin-bottom: 25px;
	}

	.input {
		font-size: 16px;
		padding: 32px;
	}

	.step-count {
		font-size: 13px;
		margin-bottom: 10px;
	}

	.form-step__doc-text {
		bottom: 15px;
	}

	.form-step__title {
		font-size: 22px;
		margin-bottom: 20px;
	}

	.step-row-block {
		margin-bottom: 30px;
	}

	.quiz__sub-title {
		font-size: 18px;
	}
}

@media (max-width: 400px) {
	.form-step__block._v2 {
		width: 100%;
		max-width: 240px;
	}

	.form-step__main {
		gap: 20px;
	}
}

.cls-1 {
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-width: 4px;
	fill-rule: evenodd;
}

@media (max-width: 1230px) {
}

@media (max-width: 991.98px) {
}

@media (max-width: 767.98px) {
}
@media (max-width: 480px) {
}

.none {
	display: none;
}

/* ============= */
/* modal-quiz */

body.scroll-lock {
	overflow: hidden;
}

body::before {
	content: "";
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 100;
	pointer-events: none;
	background-color: rgba(0, 0, 0, 0);
	transition: background-color 0.2s ease 0s;
}

body.fade::before {
	background-color: rgba(0, 0, 0, 0.8);
}

.modal {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	transform: translate(0px, -100%);
	transition: 0.5s ease 0s;
	z-index: 150;
}

.modal-quiz .quiz__title {
	color: #fff;
}
.modal-quiz .quiz__sub-title {
	color: #fff;
}

.modal.popup-active {
	transform: translate(0px, 0%);
}

.modal-quiz .quiz {
	max-width: 100%;
}

.modal-quiz .quiz__main {
	width: 100%;
}

.modal__fade {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
}

.modal__container {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	height: 100%;
	overflow-y: auto;
}

.modal__container::-webkit-scrollbar {
	width: 0px;
	height: 0px;
	background: #ffffff00;
}

.modal__body {
	width: 100%;
	position: relative;
	max-width: 850px;
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-top: auto;
	margin-bottom: auto;
}

.modal-quiz .quiz {
	padding: 0px;
	width: 100%;
}

.modal-quiz .modal__body {
	max-width: 1140px;
	padding-top: 20px;
	width: 100%;
}

.modal-close {
	padding: 0px 10px;
	position: absolute;
	top: 15px;
	right: 0px;
	display: flex;
	align-self: center;
	background-color: #ffffff00;
	width: 32px;
	height: 22px;
	cursor: pointer;
	z-index: 12;
}

.modal-close::before,
.modal-close::after {
	content: "";
	transition: all 0.3s ease 0s;
	left: 0;
	position: absolute;
	width: 100%;
	height: 4px;
	background-color: #4cc8de;
	border-radius: 2px;
}

.modal-close::before {
	transform: rotate(-45deg);
	top: calc(50% - 3px);
}

.modal-close::after {
	transform: rotate(45deg);
	bottom: calc(50% - 1px);
}

@media (max-width: 991.98px) {
	.modal-quiz .quiz {
		max-width: 100%;
	}
}

.none {
	display: none;
}
