.quiz-container .calc-form {
	text-align: unset;
	background: unset;
}
.quiz-step.quiz-step-1 {
    display: grid;
}
.sat-btn {
	white-space: nowrap;
}
.quiz-step {
	height: 100%;
	border-radius: 16px;
	position: relative;
	overflow: hidden;
	height: 500px;
}
.quiz-step-1 {
	background: url(../img/quiz_bg.webp) no-repeat;
    background-size: cover;
    background-position: center;
}
.quiz-step-1 > * {
	position: relative;
	z-index: 1;
}
.quiz-step-1:before {
    position: absolute;
    content: '';
    left: 0;
    top: 0;
    width: 100%;
    height: 250px;
    background: linear-gradient(180.00deg, rgb(0, 0, 0),rgba(0, 0, 0, 0) 100%);
    z-index: 0;
}
.quiz-step_header {
	font-family: var(--font-medium);
	position:relative;
	padding-bottom: 15px;
	height: 75px;
}
.quiz-step_header::before {
	position: absolute;
	content:'';
	width:calc(100% + 3rem);
	left:-1.5rem;
	height:1px;
	bottom:0;
	background-color:#343434;
}
.quiz-step_header__num {
	color:#505050;
	font-size:14px;
}
.quiz-step_header__title {
	font-size:24px;
	line-height: 28px;
}
.sat-btn.quiz-next {
	background-color: #fff;
	color:#1C1C1C;
	line-height: 50px;
	border-color:#fff;
	min-width: 166px;
}
.sat-btn.quiz-next:hover {
	color:#fff;
	background-color: var(--bs-red);
	border-color:var(--bs-red);
}
.quiz-container .sat-btn svg {
    fill: transparent;
}
.sat-btn.quiz-next svg path {
	stroke:#1C1C1C;
	transition: all 0.15s ease-in-out;
}
.sat-btn.quiz-next:hover svg path {
	stroke:#ffffff;
}

.sat-btn.quiz-prev {
	background-color: transparent;
	color:#fff;
	line-height: 50px;
	border-color:#fff;
	min-width: 166px;
}
.sat-btn.quiz-prev:hover {
	color:#fff;
	background-color: var(--bs-red);
	border-color:var(--bs-red);
}
.sat-btn.quiz-prev svg {
	transform:rotate(180deg);
}
.sat-btn.quiz-prev svg path {
	stroke:#fff;
	transition: all 0.15s ease-in-out;
}
.sat-btn.quiz-prev:hover svg path {
	stroke:#ffffff;
}

.quiz-step_body {
	margin-top: 15px;
	text-align: start;
	/*height: calc(100% - 75px);*/
}
.q-card-item {
	position: relative;
	display: grid;
	border-radius:12px;
	color:#fff;
	font-size: 20px;
	font-weight: 500;
	border: 1px solid #343434;
	border-radius: 12px;
	padding: 20px;
	height: 174px;
	cursor:pointer;
	transition: all 0.15s ease-in-out;
}
.q-card-item svg {
	fill:#343434;
	margin-top: auto;
    margin-left: auto;
	transition: all 0.15s ease-in-out;
}
.q-card-item:hover, .q-card-item.active {
	border-color: #fff;
}
.q-card-item:hover svg, .q-card-item.active svg {
	fill:#fff;
}
.quiz-step-2 .quiz-step_body {
	display: grid;
  	grid-template-columns: repeat(4, 1fr);
  	gap: 15px;
}
.quiz-step-3 .quiz-step_body {
	display: grid;
  	grid-template-columns: repeat(3, 1fr);
  	gap: 15px;
}
.quiz-step-4 .quiz-step_body, .quiz-step-6 .quiz-step_body {
	display: grid;
  	grid-template-columns: repeat(4, 1fr);
  	gap: 15px;
	justify-content: center;
}
.quiz-step-4 .quiz-step_body::before, .quiz-step-6 .quiz-step_body::before {
  content: '';
  grid-column: 1;
}
.quiz-step-7 .quiz-step_body::before {
    display: none;
}
.quiz-step-4 .quiz-step_body::after, .quiz-step-6 .quiz-step_body::after {
  content: '';
  grid-column: 4;
}
.quiz-step-4 .q-card-item, .quiz-step-6 .q-card-item {
	height: 364px;
}
.q-card-item::before {
	position: absolute;
	content: '';
	right:0;
	top: 0;
	width:38px;
	height: 38px;
	background-color: #fff;
	background-image: url(../img/q-item-active.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-position-x: 60%;
	border-bottom-left-radius: 12px;
	border-top-right-radius: 10px;
	z-index: 0;
	opacity: 0;
	transition: all 0.15s ease-in-out;
}
.q-card-item.active::before {
	opacity: 1;
}
.sat-btn.quiz-next[disabled] {
	background-color: transparent;
	color:#fff;
	line-height: 50px;
	border-color:#fff;
	width: 100%;
	opacity: 0.5;
	pointer-events: none;
}
.sat-btn.quiz-next[disabled] svg path {
	stroke:#fff;
	transition: all 0.15s ease-in-out;
}
.quiz-step-5 .quiz-step_body {
	display: grid;
	align-items: center;
}
.quiz-step-6 .q-card-item svg {
	position: absolute;
	top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
}
.quiz-success_descr {
	font-family: var(--bs-body-font-family);
	font-size: 16px;
    line-height: 18px;
	font-weight: 400;
    color: var(--bs-gray-500);
}

@media (max-width: 768px) {
	.m-w-100 {width:100%;}
	.quiz-step.quiz-step-1 {
		height:560px;
		background: url(../img/quiz_bg_m2.webp) no-repeat;
		background-size: contain;
		background-position: center;
	}
    .quiz-step {
        height: auto;
    }
    .quiz-step_body {
        position: relative;
        padding-bottom: 15px;
        margin-bottom: 15px;
    }
    .quiz-step_body::before {
        position: absolute;
        content: '';
        width: calc(100% + 3rem);
        left: -1.5rem;
        height: 1px;
        bottom: 0;
        background-color: #343434;
    }
    .m-bg-black {
        background-color: #000 !important;
    }
    .quiz-step_header__title {
        font-size: 16px;
        line-height: 20px;
    }
    .quiz-step_header__num {
        font-size: 12px;
    }
    .quiz-step-2 .quiz-step_body, .quiz-step-3 .quiz-step_body {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }
    .quiz-step-4 .quiz-step_body, .quiz-step-6 .quiz-step_body {
        grid-template-columns: repeat(1, 1fr);
        gap: 12px;
    }
    .quiz-step-4 .quiz-step_body::before, .quiz-step-6 .quiz-step_body::before, .quiz-step-4 .quiz-step_body::after, .quiz-step-6 .quiz-step_body::after {
        display: none;
    }
    .quiz-step_body {
        height: auto;
        min-height: 371px;
    }
    .q-card-item {
        padding: 10px;
        font-size: 14px;
        line-height: 1;
        border-radius: 10px;
    }
    .quiz-step-2 .q-card-item {
        height: 80px;
    }
    .quiz-step-3 .q-card-item {
        height: 110px;
    }
    .quiz-step-4 .q-card-item, .quiz-step-6 .q-card-item {
        height: 170px;
    }
    .q-card-item::before {
        width: 26px;
        height: 26px;
        background-size: 50%;
        border-bottom-left-radius: 10px;
        border-top-right-radius: 8px;
    }
    .quiz-step-2 .q-card-item svg {
        transform: scale(0.5);
        position: absolute;
        right: -20px;
        bottom: -5px;
    }
    .quiz-mob-btns {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }
    .quiz-mob-btns > * {
        width: 100%;
    }

}


/********/
.quiz-container {
    position: relative;
    overflow: 0.4s ease;
}

.quiz-step {
    transition: opacity 0.4s ease;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    display: none;
}

/* Первый шаг видим сразу */
.quiz-step-1 {
    position: relative;
    opacity: 1;
    display: grid;
}
.quiz-step[data-selection="single"] .q-card-item {
    transition: all 0.2s ease;
}