.contact-form {
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	/*  align-items: center;*/
	min-height: 90vh;
}

.intro-border {
	/* position: absolute; */
	width: 100%;
}

.intro-border.top {
	padding-top: 3.125rem;
}

.intro-border.bottom {
	padding-bottom: 3.125rem;
}

.form {
	padding: 0 22rem;
	min-height: 70vh;
	max-width: 60rem;
	min-width: 58rem;
	margin: auto;
}

@media (max-width: 1600px) {
	.form {
		padding: 0 20rem;
		min-width: auto;
		margin: 0;
	}
}

@media (max-width: 1400px) {
	.form {
		padding: 0 12rem;
	}
}

@media (max-width: 1300px) {
	.form {
		padding: 0 10rem;
	}
}

@media (max-width: 1100px) {
	.form {
		padding: 0 6rem;
	}
}

@media (max-width: 768px) {
	.form {
		padding: 0 2rem;
	}
}

.step {
	display: none;
}

.step.visible {
	display: flex;
	min-height: inherit;
	justify-content: space-between;
	flex-direction: column;
}

.form-question {
	color: #fbfbfb;
	font-family: 'bree', sans-serif;
	font-size: 3.75vw;
	font-weight: 700;
	margin: 0;
	line-height: 100%;
	text-shadow: 0px 0px 20px rgb(227 94 17 / 80%);
}

.form .label-bloc {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.form .label-bloc.budget {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 4rem;
	max-width: 5rem;
}

.form label,
.label-bloc p {
	color: #4d1905;
	font-family: 'bree', sans-serif;
	font-size: 1.375rem;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	display: block;
	padding: 0.5rem 0;
}

@media (max-width: 600px) {
	.form .label-bloc.budget {
		min-width: 3rem;
		max-width: 3.4rem;
	}

	.budget-min {
		margin-left: -25px;
	}

	.budget-max {
		margin-right: -25px;
	}

	.form .label-bloc.budget p {
		font-size: 1rem;
	}
}

.form fieldset.double-range-slider {
	display: inline-flex;
}
.form fieldset.error .errorField {
	display: block;
}

.form fieldset.error-email .errorField-email {
	display: block;
}

.form .errorField,
.form .errorField-email {
	border-radius: 5px;
	background: #e5335b;
	color: #fbfbfb;
	text-align: center;
	font-family: 'bree', sans-serif;
	font-size: 18px;
	font-weight: 700;
	line-height: 100%;
	text-transform: uppercase;
	padding: 0.35rem 0.5rem 0.5rem 0.5rem;
	display: none;
}

.form .input-bloc {
	display: flex;
	flex: auto;
	align-items: center;
}

.form input,
select,
textarea {
	/*En cas de modification de "box-shadow" ou "color",
  répercuter aussi sur les classes ".form input:-webkit-autofill".*/
	border-radius: 0.6rem;
	background: #fbfbfb;
	box-shadow: 1px 1px 2px 1px rgb(58, 17, 27), 1px 1px 3px 2px rgb(80 50 100 / 70%) inset;
	color: #4d1905;
	font-family: 'bree', sans-serif;
	font-size: 1.375rem;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	padding: 1rem 1rem 1rem 1.5rem;
	border-image: url(../../assets/common/border-round.png) 30%;
	border-image-outset: 1px;
	border-image-width: 0.9rem;
	flex: 1;
}

.form input:focus,
textarea {
	outline: none !important;
	transition: none !important;
}

textarea {
	border-image-outset: 3px 1px 3px 1px;
	box-shadow: 1px 3px 2px 1px rgb(58, 17, 27), 2px 0px 3px 2px rgb(80 50 100 / 70%) inset;
	
}

.form input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus textarea:-webkit-autofill,
textarea:-webkit-autofill:hover textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
	-webkit-text-fill-color: #4d1905;
	-webkit-box-shadow: 1px 1px 2px 1px rgb(58, 17, 27), 1px 1px 3px 2px rgb(80 50 100 / 70%) inset, /*Couleur du background de l'autofill*/ 0 0 0 10000px rgb(253, 232, 217) inset !important;
}

.form-bloc {
	display: flex;
}

.form-bloc {
	display: flex;
}

.form-bloc > fieldset {
	flex: 1;
}

.form-bloc > fieldset:first-child {
	margin-right: 2rem;
}

.form-bloc > fieldset:last-child {
	margin-left: 2rem;
}

@media (max-width: 1024px) {
	.form-bloc {
		display: flex;
		flex-direction: column;
	}

	.form-bloc > fieldset:first-child,
	.form-bloc > fieldset:last-child {
		margin: 0;
	}

	.form-question {
		font-size: 4.5vw;
		text-shadow: 0px 0px 3vw rgb(227 94 17 / 80%);
	}
}

@media (max-width: 768px) {
	.form-question {
		font-size: 6vw;
		text-shadow: 0px 0px 2vw rgb(227 94 17 / 80%);
	}
}

.form-button {
	padding: 3rem 0 0 0rem;
	display: flex;
}

.form-button .previous {
	margin-right: 2rem;
}

.form-button.submit {
	justify-content: space-between;
}

@media (max-width: 450px) {
	.form-button {
		flex-direction: column-reverse;
		align-items: center;
	}

	.form-button .button {
		width: 100%;
	}

	.form-button .previous {
		margin-right: 0;
		margin-top: 2rem;
	}
}

.recap {
	border-radius: 10px;
	border: 3px solid var(--Yellow-Gradient, #df6b68);
	background: #4d1905;
	box-shadow: 1px 1px 2px 1px rgb(58, 17, 27), 1px 1px 3px 2px rgb(57 17 27) inset;
	border-image: url(../../assets/common/border-round.png) 30%;
	border-image-outset: 1px;
	border-image-width: 0.9rem;
	padding: 1rem 1.5rem;
	color: #fbfbfb;
	font-family: Bree CYR;
	font-size: 22px;
	font-weight: 380;
	line-height: 30px;
	margin: 2rem 0 0;
}

.recap p {
	margin: 0;
	line-height: 30px;
	display: inline-block;
}

.recap .label {
	color: #f3974e;
	font-family: 'bree', sans-serif;
	font-size: 22px;
	font-weight: 600;
	line-height: 30px;
}

.recap .recap-answer {
	font-family: 'bree', sans-serif;
	font-size: 22px;
	font-weight: 300;
}

.step {
	opacity: 1;
	transition: opacity 0.8s ease-in-out, transform 0.8s ease-out;
	transform: translateX(0);
}

.step.hidden {
	opacity: 0;
	transform: translateX(-10rem);
	transition: opacity 0.8s ease-in-out, transform 0.8s ease-out;
}

.step.next {
	transform: translateX(10rem);
	opacity: 0;
}

.step.next-left {
	transform: translateX(-10rem);
	opacity: 0;
}

.step.previous {
	transform: translateX(10rem);
	opacity: 0;
}

/* Double slider styling */

.range-container {
	display: flex;
	flex-direction: column;
	width: 80%;
	margin: auto 1rem;
	position: relative;
}

@media (max-width: 600px) {
	.range-container {
		margin: auto 0.5rem auto 0.2rem;
	}
}

.sliders-control {
	position: relative;
	min-height: 50px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

input[type='range']::-webkit-slider-thumb {
	-webkit-appearance: none;
	pointer-events: all;
	width: 24px;
	height: 24px;
	background-color: #f85074;
	border: 3px solid #fff;
	border-radius: 50%;
	cursor: pointer;
	box-shadow: inset 0 0 1px #000, 0 0 3px #000;
	-webkit-box-shadow: inset 0 0 1px #000, 0 0 3px #000;
}

input[type='range']::-moz-range-thumb {
	/* -webkit-appearance: none; */
	pointer-events: all;
	width: 24px;
	height: 24px;
	background-color: #f85074;
	border: 3px solid #fff;
	border-radius: 50%;
	cursor: pointer;
	box-shadow: inset 0 0 1px #000, 0 0 3px #000;
	-webkit-box-shadow: inset 0 0 1px #000, 0 0 3px #000;
}

input[type='range']::-webkit-slider-thumb:hover {
	background: #e5335b;
}

input[type='range']::-webkit-slider-thumb:active {
	box-shadow: inset 0 0 3px #000, 0 0 9px #000;
	-webkit-box-shadow: inset 0 0 3px #000, 0 0 9px #000;
}

input[type='range'] {
	-webkit-appearance: none;
	appearance: none;
	height: 2px;
	width: 100%;
	position: absolute;
	background-color: #c6c6c6;
	pointer-events: none;
}

#minSlider {
	width: 99%;
	height: 70px;
	padding: 0px;
	box-shadow: 1px 1px 2px 1px rgb(58, 17, 27), 1px 1px 3px 4px rgb(80 50 100 / 70%) inset;
}

#minSlider::-webkit-slider-thumb {
	transform: translate(var(--minOffset), -145%);
}

#minSlider::-moz-range-thumb {
	transform: translate(var(--minOffset), -145%);
}

#maxSlider {
	z-index: 1;
	background: none;
	width: 99%;
	height: 70px;
	padding: 0px;
	border: transparent;
	box-shadow: none;
}

#maxSlider::-webkit-slider-thumb {
	transform: translate(var(--maxOffset), -145%);
}

#maxSlider::-moz-range-thumb {
	transform: translate(var(--maxOffset), -145%);
}

output {
	position: absolute;
	top: -4.5rem;
	background-color: white;
	color: #f85074;
	font-family: 'bree', sans-serif;
	font-weight: 700;
	border-radius: 10px;
	font-size: 1.2rem;
	padding: 5px 12px 8px;
	transition: none;
	transform: translateX(-50%);
	white-space: nowrap;
}

#maxOutput {
	left: 100%;
}

@media (max-width: 600px) {
	#minSlider {
		height: 50px;
	}

	#minSlider::-webkit-slider-thumb {
		transform: translate(var(--minOffset), -105%);
	}

	#minSlider::-moz-range-thumb {
		transform: translate(var(--minOffset), -105%);
	}

	#maxSlider {
		height: 50px;
	}

	#maxSlider::-webkit-slider-thumb {
		transform: translate(var(--maxOffset), -105%);
	}

	#maxSlider::-moz-range-thumb {
		transform: translate(var(--maxOffset), -105%);
	}

	output {
		top: -3rem;
		font-size: 0.9rem;
		padding: 3px 9px 5px;
		border-radius: 8px;
	}
}

/* End double slider styling */
