.icf_form_wrapper {
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.icf_step_footer .elementor-button {
	vertical-align: middle;
}
.icf_step_footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: row;
}

@media screen and (max-width: 640px) {
	.icf_form_wrapper {
		text-align: center;
		position: relative;
		padding-bottom: 42px;
	}
	.icf_form_wrapper .rte ul,
	.icf_form_wrapper .rte li {
		text-align: left;
	}
	.icf_info_text {
		margin-bottom: 1em;
	}
	/* [data-request-form]:not(.icf_form_step--2) .icf_preview {
		display: none;
	}
	.icf_preview [data-preview-image] {
		position: relative;
		padding-bottom: 100%;
	}
	.icf_preview [data-preview-image] img {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
	} */
}

@media screen and (min-width: 639px) {
	.icf_form_wrapper {
		flex-direction: row;
	}
	.icf_preview {
		flex: 1 1 45%;
		margin-right: 3em;
	}
	.icf_form {
		flex: 1 1 55%;
	}
	/* #icf_form_step--4 + .icf_form_step .icf_step_footer {
		display: none;
	} */
}

[data-form-question] label {
	cursor: pointer;
	margin-right: 1em;
	margin-bottom: 1em;
	text-align: left;
	vertical-align: top;
}
[data-form-question] input:disabled + label {
	display: none;
}

.icf_form_wrapper fieldset legend {
	margin-bottom: 1em;
}
.icf_form_wrapper fieldset {
	padding: 0;
	margin: 0 0 2em;
	border: 0;
}

[data-question="1"] label span {
	/* display: block;
	padding: .5em 1em;
	border: 1px solid #000;
	background: #FFF;
	color:#000;
	border-radius: 0.125em; */
}
[data-question="2"] .icf_option_wrapper {
	margin-right: -1em;
}
[data-question="2"] label {
	width: calc((100% / 3) - 1em);
}
@media screen and (max-width: 640px) {
	[data-question="2"] label {
		width: calc((100% / 2) - 1em);
	}
}

[data-question="2"] label span {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

[data-question="2"] label span .my-icon-wrapper {
	width: 32px;
	margin-right: 1em;
}

.colour_swatch {
	margin: -14px -20px;
	border: 1px solid #000;
	border-radius: inherit;
	display: block;
	text-align: center;
	background: #ffffff;
	color: #000;
}
.colour_swatch span {
	display: block;
	padding: .5em;
	border-top: 1px solid #FFF;
	background: linear-gradient(#F2F2F2, #FFF);
	border-bottom-left-radius: inherit;
	border-bottom-right-radius: inherit;
	width: 5.5rem;
	text-transform: initial;
	font-size: 0.75em;
}
.colour_swatch--colour {
	display: block;
	width: 5.5em;
	height: 5.5em;
	box-shadow: inset 0 2px 10px rgba(0,0,0,.66);
}
[data-question="3"] .icf_option_wrapper label.elementor-button {
	border: 0!important;
	overflow: hidden;
}
/* [data-question="3"] .icf_option_wrapper {
	display: flex;
	flex-wrap: wrap;
}
[data-question="3"] .icf_option_wrapper label {
	flex-basis: 50%;
}
@media screen and (min-width: 800px) {
	[data-question="3"] .icf_option_wrapper label {
		flex-basis: 33%;
	}
} */

/* .styled_check + label span {
	margin-right: 0;
}
.styled_check + label span {
	position: relative;
	display: inline-block;
	padding-left: 1.5em;
	margin-right: 1em;
	margin-bottom: 1em;
}
.styled_check + label span:before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	content: '';
	display: inline-block;
	border: 1px solid #000;
	border-radius: 0.125em;
	width: 1em;
	height: 1em;
}
.styled_check:checked + label span:before {
	background: #000;
} */

.icf_output_render {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.icf_output_data,
.icf_output_download {
	flex: 1 1 100%;
}
.icf_output_download a:not([href]) {
	display: none;
}

.icf_output_data label {
	display: block;
	margin-bottom: 0.5em;
}

.icf_info_text {
	margin-bottom: 1em;
}

/* .styled_check, */
[data-form-question] input,
input[type=radio][name="icf_form_step"],
input[type=radio][name="icf_form_step"]:not(:checked) + .icf_form_step,
#icf_form_step--1:not(:checked) ~ form .icf_form .icf_form_step--1,
#icf_form_step--2:not(:checked) ~ form .icf_form .icf_form_step--2,
#icf_form_step--3:not(:checked) ~ form .icf_form .icf_form_step--3,
#icf_form_step--4:not(:checked) ~ form .icf_form .icf_form_step--4,
input[type=radio][name="icf_form_step"]:not(:checked) + .icf_form_step .icf_step_footer,
#icf_form_step--1:not(:checked) ~ form .icf_form .icf_form_step--1 .icf_step_footer,
#icf_form_step--2:not(:checked) ~ form .icf_form .icf_form_step--2 .icf_step_footer,
#icf_form_step--3:not(:checked) ~ form .icf_form .icf_form_step--3 .icf_step_footer,
#icf_form_step--4:not(:checked) ~ form .icf_form .icf_form_step--4 .icf_step_footer {
	overflow: hidden;
	-webkit-appearance: none;
	appearance: none;
	margin: 0;
	padding: 0;
	text-indent: -99999px;
	width: 0;
	height: 0;
	border: 0;
}
input[type=radio][name="icf_form_step"]:not(:checked) + .icf_form_step,
#icf_form_step--1:not(:checked) ~ form .icf_form .icf_form_step--1,
#icf_form_step--2:not(:checked) ~ form .icf_form .icf_form_step--2,
#icf_form_step--3:not(:checked) ~ form .icf_form .icf_form_step--3,
#icf_form_step--4:not(:checked) ~ form .icf_form .icf_form_step--4 {
	display: block;
	position: absolute;
	top: 0;
	pointer-events: none;
}

#icf_form_step--1:checked ~ .icf__indicators .icf__indicators__indicator:nth-of-type(1),
#icf_form_step--2:checked ~ .icf__indicators .icf__indicators__indicator:nth-of-type(2),
#icf_form_step--3:checked ~ .icf__indicators .icf__indicators__indicator:nth-of-type(3),
#icf_form_step--4:checked ~ .icf__indicators .icf__indicators__indicator:nth-of-type(4) {
	color: #25819A;
}

.icf_form_step--2_view_more__wrapper #icf_form_step--2_view_more {
	display: none;
}
.icf_form_step--2_view_more__wrapper #icf_form_step--2_view_more:checked ~ label span:first-child {
	display: none;
}
.icf_form_step--2_view_more__wrapper #icf_form_step--2_view_more:not(:checked) ~ label span:last-child {
	display: none;
}
.icf_form_step--2_view_more__wrapper #icf_form_step--2_view_more:not(:checked) ~ [data-form-question] .icf_option_wrapper label:nth-of-type(n+10) {
	display: none;
}

.icf_step_footer {
	margin-top: 1em;
}
@media screen and (max-width: 640px) {
	.icf_step_footer {
		position: fixed;
		bottom: 0;
		left: 0;
		background: rgba(255,255,255,.5);
		z-index: 999999;
		width: 100%;
		padding: 10px;
	}
	.icf_step_footer .elementor-button {
		width: calc(50% - .5em);
	}
}

.keyboard_input {
	margin-bottom: .5em;
}
[name=attachment] {
	display: none;
}
[name=attachment]:invalid + label > span:last-child {
	display: none;
}
[name=attachment]:not(:invalid) + label > span:first-child {
	display: none;
}
[name=attachment]:invalid ~ .icf_step_footer > *:last-child {
	opacity: .5;
	pointer-events: none;
	cursor: not-allowed;
}
.icf_form_step--1 .icf_step_footer span {
	pointer-events: none;
	opacity: 0;
	visibility: hidden;
}
.icf_form_wrapper .icf_form_step--2 fieldset {
	margin-bottom: 0;
}
.icf_form_step--4 fieldset {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.icf_form_step--4 fieldset > input {
	width: calc(50% - 10px);
}
#accept_tcs {
	display: inline-block;
	margin-right: .5em;
	vertical-align: middle;
}


.icf__indicators {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: nowrap;
	font-size: 13px;
	margin-bottom: 20px;
}
.icf__indicators__indicator {
	font-family: var( --e-global-typography-primary-font-family ), Sans-serif;
	font-weight: var( --e-global-typography-primary-font-weight );
	flex-basis: 0;
	padding: 0 10px;
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
}
.icf__indicators__indicator:first-child {
	padding-left: 0;
}
.icf__indicators__indicator__number {
	border-radius: 50%;
	width: 30px;
	height: 30px;
	border-width: 1px;
	border-style: solid;
	border-color: currentColor;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 10px;
}
.icf__indicators__indicator__label {
	text-align: center;
}
.icf__indicators__indicator__separator {
	margin-top: calc(30px - 1px);
	width: 100%;
	height: 1px;
	background-color: #c2cbd2;
}