.ec{
	font-family:sans-serif;
	margin:2rem auto;
	max-width:65rem;
	width:94%;
}

.ec .ec-step{
	background-color:#fff;
	border:2px solid #000000;
	border-radius:1.25rem;
	margin-bottom:3.75rem;
	opacity:0.5;
	transition:opacity 0.25s;
}

.ec .ec-step.active{
	opacity:1;
}


.ec .ec-step .ec-step-header{
	align-items:center;
	border-bottom:2px solid #000000;
	display:flex;
	justify-content:space-between;
	padding:0.5rem 4%;
}

.ec .ec-step .ec-step-header .ec-step-title{
	margin:1rem 0;
	padding-right:1rem;
}

.ec .ec-step .ec-step-header .ec-step-title h1{
	color:#000;
	font-size:1.5rem;
	font-weight:600;
	line-height:normal;
	margin:0;
}

.ec .ec-step .ec-step-header .ec-step-title p{
	color:#000;
	font-size:0.875rem;
	line-height:1.2em;
	margin:0;
}

@media only screen and (min-width:44.9375rem){ 

	.ec .ec-step .ec-step-header{
		align-items:center;
		display:flex;
		justify-content:space-between;
		padding:1.5rem 4%;
	}

	.ec .ec-step .ec-step-header .ec-step-title{
		margin:1rem 0;
	}

	.ec .ec-step .ec-step-header .ec-step-title h1{
		font-size:1.5rem;
		margin:0;
	}

	.ec .ec-step .ec-step-header .ec-step-title p{
		font-size:0.875rem;
		line-height:1.2em;
		margin:0;
	}	

}

@media only screen and (min-width:67.4375rem){

	.ec .ec-step .ec-step-header{
		padding:1.5rem 10%;
	}

}

.ec .ec-step .ec-step-header .ec-step-counter{
	/*display:none;*/
	height:3.625rem;
	min-width:3.625rem;
	width:3.625rem;
}

.ec .ec-step .ec-step-header .ec-step-counter > div{
	align-items:center;
	background-size:auto 100%;
	color:#000000;
	display:flex;
	font-size:1rem;
	font-weight:500;
	height:100%;
	justify-content:center;
	width:100%;
}

@media only screen and (min-width:44.9375rem){

	.ec .ec-step .ec-step-header .ec-step-counter{
		height:4.625rem;
		min-width:4.625rem;
		width:4.625rem;
	}

}

@media only screen and (min-width:67.4375rem){ 

}

/* Step Back Button */

.ec .ec-step a.btn-back{
	color:#000000;
	display:none;
	font-size:0.875rem;
	font-weight:500;
	margin:0 1rem 1.25rem 1rem;
	position:relative;
	text-decoration:none;
}
.ec .ec-step a.btn-back:hover{
	text-decoration:underline;
}

.ec .ec-step a.btn-back:after{
	content:'<';
	height:13px;
	left:-1rem;
	position:absolute;
	top:0px;
	width:15px;
}

.ec .ec-step.active a.btn-back{
	display:inline-block;
}

.ec .ec-step a.btn-back{
	display:none;
}

@media only screen and (min-width:44.9375rem){

	.ec .ec-step#step-1 a.btn-back{
		display:none;
	}

}

/* Step Next Button */

.ec .ec-step a.btn-next{
	display:none;
}

@media only screen and (min-width:44.9375rem){

	.ec .ec-step a.btn-next{
		background-color:#FFFFFF;
		border:2px solid #000000;
		border-radius:1.8125rem;
		box-sizing:border-box;
		color:#000000;
		display:block;
		font-size:0.875rem;
		font-weight:600;
		margin:1.5rem 0 0 auto;
		max-width:10rem;
		opacity:0.5;
		padding:0.875rem 1rem;
		text-align:center;
		text-decoration:none;
	}

	.ec .ec-step a.btn-next.active{
		opacity:1;
	}
	
}

/* Step Main */

.ec .ec-step .ec-step-main{
	/*display:none;*/
	padding:1.5rem 4%;
}

@media only screen and (min-width:44.9375rem){

	.ec .ec-step .ec-step-main{
		padding:2.5rem 4%;
	}

}

@media only screen and (min-width:67.4375rem){

	.ec .ec-step .ec-step-main{
		padding:2.5rem 10%;
	}

}

/* Qustions */

.ec .ec-step .ec-step-main .ec-questions .ec-question{
	border:2px solid #000000;
	border-radius:1.25rem;
	box-sizing:border-box;
	margin-top:1.5rem;
	opacity:0.5;
	padding:0.5rem 4%;
	transition:opacity 0.25s;
}

.ec .ec-step .ec-step-main .ec-questions .ec-question.active{
	opacity:1;
}

.ec .ec-step .ec-step-main .ec-questions .ec-question:first-child{
	margin-top:0rem;
}

.ec .ec-step .ec-step-main .ec-questions .ec-question .ec-question-header{
	align-items:center;
	display:flex;
	padding:0 1rem;
	height:3rem;
}

.ec .ec-step .ec-step-main .ec-questions .ec-question .ec-question-header h2{
	box-sizing:border-box;
	color:#000000;
	font-size:1.25rem;
	font-weight:600;
	margin:0;
	text-align:center;
	width:100%;
}

.ec .ec-step .ec-step-main .ec-questions .ec-question .ec-question-header h2 span{
	color:#000000;
	display:block;
	font-size:0.875rem;
	font-weight:400;
	text-align:center;
}

.ec .ec-step .ec-step-main .ec-questions .ec-question .ec-question-main{
	height:0;
	overflow:hidden;
	transition: height 250ms ease-in;
}

@media only screen and (min-width:44.9375rem){ /* Tablet: > 719 */

	.ec .ec-step .ec-step-main .ec-questions{
		align-items:stretch;
		display:flex;
		justify-content:space-between;
	}
	
	.ec .ec-step .ec-step-main .ec-questions .ec-question{
		margin-top:0;
		padding:0.5rem 2.5%;
		width:32.33%;
	}
	
	.ec .ec-step .ec-step-main .ec-questions .ec-question .ec-question-header{
		align-items:center;
		display:flex;
		padding:0 0 0 0;
		min-height:3rem;
	}
	
	.ec .ec-step .ec-step-main .ec-questions .ec-question .ec-question-header h2{
		font-size:1.25rem;
		font-weight:600;
		margin:0;
		text-align:center;
		width:100%;
	}

	.ec .ec-step.active .ec-step-main .ec-questions .ec-question .ec-question-main{
		height:auto;
	}

}

@media only screen and (min-width:67.4375rem){ /* Desktop: > 1079 */
	
	.ec .ec-step .ec-step-main .ec-questions .ec-question{
		padding:0.5rem 4%;
	}

}


/* Question Icons */

.ec .ec-step .ec-step-main .ec-questions .ec-question .option-graphic{
	display:block;
	height:2rem;
}

/* Question: Text Input Area */

.question-container input[type=text]{
	background:transparent;
	border:0;
	border-bottom:1px solid #000000;
	color:#000000;
	display:block;
	font-family:sans-serif;
	font-size:0.875rem;
	font-weight:500;
	margin:0 auto;
	max-width:13.75rem;
	padding:0.5rem 0;
	text-align:center;
	width:100%;
}

.question-container input[type=text]:focus{
	outline-color:rgba(65,65,65,0.8);
}

.question-container input[type=text]::placeholder{
	color:rgba(65,65,65,0.8);
}

.question-container p{
	color:#1D0D35;
	display:block;
	font-size:0.75rem;
	margin:1.125rem auto;
	max-width:12rem;
	text-align:center;
}

a.link-location{
	display:inline-block;
	color:#000;
	font-size:0.875rem;
	font-weight:500;
	text-decoration:underline;
	padding:0.25rem 0 0.25rem 0; 
}
a.link-location:hover{
	color:var(--color-blue);
}

/* Question: Radio Buttons */

.ec .ec-step .ec-step-main .ec-questions .ec-question .question-option-item > label{
	cursor: pointer;
	display:block;
	margin-bottom:0.625rem;
	position: relative;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.ec .ec-step .ec-step-main .ec-questions .ec-question .question-option-item > label input{
	cursor: pointer;
	height: 0;
	opacity: 0;
	position: absolute;
	width: 0;
}

.ec .ec-step .ec-step-main .ec-questions .ec-question .question-option-item .option-title{
	align-items:center;
	border:2px solid #000000;
	border-radius:100px;
	box-sizing:border-box;
	color:#000000;
	display:flex;
	font-size:0.875rem;
	font-weight:600;
	line-height:1.15em;
	min-height:3.125rem;
	padding:0.5rem 0.75rem;
}

.ec .ec-step .ec-step-main .ec-questions .ec-question .question-option-item .option-title span{
	color:#000000;
	display:block;
	text-align:center;
	width:100%;
}

.ec .ec-step .ec-step-main .ec-questions .ec-question .question-option-item .option-title span em{
	color:#000000;
	display:block;
	font-size:0.75rem;
	font-style:normal;
	font-weight:400;
	line-height:1.15em;
	text-align:center;
}

.ec .ec-step .ec-step-main .ec-questions .ec-question .question-option-item input:checked ~ .option-title {
	color:#FFFFFF;
	background-color: #000000;
}
.ec .ec-step .ec-step-main .ec-questions .ec-question .question-option-item input:checked ~ .option-title span{
	color:#FFFFFF;
}
.ec .ec-step .ec-step-main .ec-questions .ec-question .question-option-item input:checked ~ .option-title em{
	color:#FFFFFF;
}

/* Question: Select */

.ec .ec-step .ec-step-main .ec-questions select{
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	appearance: none !important;
}

.ec .ec-step .ec-step-main .ec-questions select{
	background-color:transparent;
	background-image:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAiIGhlaWdodD0iNiIgdmlld0JveD0iMCAwIDEwIDYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTAgMEgxMEw1IDZMMCAwWiIgZmlsbD0iIzAwMDAwMCIvPjwvc3ZnPg==");
	background-position:94% 50%;
	background-repeat:no-repeat;
	border:0;
	border-bottom:1px solid #000000;
	color:#000000;
	display:block;
	font-family:sans-serif;
	font-size:0.875rem;
	font-weight:500;
	margin:1.25rem auto;
	max-width:13.75rem;
	padding:0.5rem 0;
	text-align:center;
	width:100%;
}

.ec .ec-step .ec-step-main .ec-questions select:focus{
	outline-color:rgba(65,65,65,0.8);
}

/* Submit Button */

button.btn-next{
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	appearance: none !important;
	background-color:#FFFFFF;
	border:2px solid #000000;
	border-radius:1.8125rem;
	box-sizing:border-box;
	color:#000000;
	cursor:pointer;
	display:block;
	font-size:0.875rem;
	font-weight:600;
	margin:1.5rem 0 0 auto;
	min-width:32.33%;
	padding:0.875rem 1rem;
	text-align:center;
	text-decoration:none;
	/*width:32.33%;*/
}
button.btn-next:hover{
	background-color:#000000;
	color:#FFFFFF;
}
