@import url('https://fonts.googleapis.com/css2?family=Source+Sans+Pro:ital,wght@0,300;0,400;0,600;0,700;1,300;1,400;1,600;1,700&display=swap');

@import url('https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.10.3/font/bootstrap-icons.min.css');

body,html{
	font-family: 'Source Sans Pro', sans-serif;
	font-size:16px;
	overflow-x:hidden;
}

:root{
	--color1:1;
	--satur1:81%;
	--light1:73%;
	--light-hover: calc(var(--light1)/1.15);
	--maincolor:hsl(var(--color1) ,var(--satur1), var(--light1));
	--maindarker:hsl(var(--color1) ,var(--satur1), var(--light-hover));


	--color2:0;
	--satur2:100%;
	--light2:50%;
	--light2-hover: calc(var(--light2)/1.15);
	--subcolor:hsl(var(--color2) ,var(--satur2), var(--light2));
	--subdarker:hsl(var(--color2) ,var(--satur2), var(--light2-hover));
	--trim:#666;
}

*{
	box-sizing:border-box;
}

.cw{
	width:100%;
	max-width:1200px;
	margin:0px auto;
}

.btn1{
	--trim: var(--maindarker);
	background:var(--maincolor);
}

.btn1:hover{
	background:var(--maindarker);
}

.btn2{
	--trim: var(--subdarker);
	background:var(--subcolor);
}

.btn2:hover{
	background:var(--subdarker);
}

.btn-wt{
	color: #fff;
}

/*main*/

.main{
	background:#d9d9d9;
	width:100%;
	min-height:100vh;
	position: relative;
}

.fs-flex{
	display:flex;
	align-items: center;
	flex-direction: column;
	justify-content: space-between;
	gap:1em;
}

.main-panel{
	width:100%;
	max-width:70%;
	min-width:360px;
	background:#fff;
	margin-inline:auto;
	display:flex;
	flex-direction: column;
	border:1px solid #ccc;
	position: relative;
	isolation:isolate;
}

.main-panel > div{
	width:100%;
}

.panel-upper{

	padding:2em;
	padding-left:10%;
	min-height:60vh;
}

.panel-lower{
	position: relative;
	width:100%;
	height:5em;
	border-top:1px solid #ccc;
	text-align:right;
	padding:1em;
	display:flex;
	flex-direction:row-reverse;
	justify-content: space-between;
	gap:1em;
}

.panel-lower .as-btn{
	display:block;
	max-width:max-content;
	height:100%;
	padding-inline:1.5em;
	display:flex;
	align-items: center;
	text-align:center;
	text-decoration: none;
	font-size:1.5em;
	font-weight:700;
	text-transform: uppercase;
	transition:.3s background;
	border-radius:99em;
}


.panel-lower .btn-next.final{
	margin-inline:auto;
}

.panel-h{
	text-align:center;
	font-size:2em;
	text-transform: capitalize;
	margin-bottom:.5em;
	font-weight:600;
}


.step-list{
	display:grid;
	grid-template-columns: 1fr;
	position: absolute;
	top:10%;
	left:3.5vw;
	gap:1.75em;
	font-size:.7em;
	width:2.25em !important;
	pointer-events: none;
	counter-reset: steps;
}

.step-h{
	font-size:1.2em;
}

.step-list > div:before{
	counter-increment: steps;
	content:counter(steps);
}


.step-list > div{
	aspect-ratio:1/1;
	width:2.25em;
	background:#a6a6a6;
	border-radius:99em;
	display:flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

.step-list > div:after{
	content:'';
	height:1.75em;
	width:.35em;
	position: absolute;
	bottom:0;
	left:50%;
	background:#a6a6a6;
	transform: translate(-50%,100%);
}

.step-list > div:last-child:after{
	display:none;
}

.step-list > div.active,
.step-list > div.active:after,
.step-list > div.done,
.step-list > div.done:after{
	background:var(--maincolor);
	color:#fff;
}

.step-list > div.active{
	box-shadow: 0 0 0 1px #fff, 0 0 0 2px var(--maincolor);

}

.q-list > div:not(.active){
	position: absolute;
	top:0;
	left:0;
	width:100%;
	transform:translateX(101%);
	opacity:0;
	pointer-events: none;
}

.q-list{
	position: relative;
	overflow:hidden;
	isolation:isolate;
	counter-reset:question;
	padding:.25em;
}

.q-list > div{
	transition:1.3s opacity;
}


.q-list > div:before{
	counter-increment: question;
	content:"Steps "counter(question);
	font-size:1.1em;
}

.q-h{
	font-size:1.5em;
	font-weight:300;
	margin-bottom:1em;
}

.q-sh{
	font-size:1.2em;
	font-weight:600;
	margin-bottom:0;
	letter-spacing: -.025em;
	margin-bottom:.25em;
}

.icon-grid{
	display:grid;
	grid-template-columns: repeat(auto-fit, minmax(0px, 1fr));;
	gap:1em;
	padding:0 15vw;
	font-size:1.15vw;
	font-weight:700;
	margin-top:5vh;
}

.icon-grid > *{
	aspect-ratio:1/1;
	background:#ccc;
	position: relative;
	isolation:isolate;
	overflow:hidden;
}


.btn-icon{
	width:100%;
	display:block;
	height:auto;
	transform:translateY(-10%);
	transition:.3s;
	padding:1.5em;
}

.icon-grid > *:hover > .btn-icon{
	transform:scale(1.1) translateY(-8%);
}

.icon-grid > *:before{
	content:'';
	position: absolute;
	inset:0;
	z-index:-1;
	opacity:0;
	background:var(--maincolor);
	transition:.3s opacity;
}

.icon-grid > *:hover:before{
	opacity:.1;
}

.icon-grid > *.active{
	box-shadow:0 0 0 2px #fff inset, 0 0 0 2px var(--maincolor);
}

.btn-icon-text{
	position: absolute;
	bottom:.35em;
	width:100%;
	text-align:center;
}

.gridbtn1{
	background:#f6bd60;
	color:#fff;
}

.gridbtn2{
	background:#f7ede2;
	color:#153847;
}

.gridbtn3{
	background:#f5cac5;
	color:#153847;
}

.gridbtn4{
	background:var(--maincolor);
	color:#fff;
}

.gridbtn5{
	background:#84a59d;
	color:#fff;
}

.stylish-btn,
.stylish-textbox{
	display:block;
	font-size:2em;
	display:block;
	width:100%;
	max-width:420px;
	padding:.5em;
	padding-left:2em;
	box-shadow:0 0 0 1px var(--maincolor);
	margin-bottom:.5em;
	border-radius:99em;
	color:var(--maincolor);
	text-decoration: none;
	position: relative;
	isolation:isolate;
}

.stylish-btn:before{
	content:'';
	position: absolute;
	top:50%;
	left:1em;
	width:.5em;
	aspect-ratio:1/1;
	border-radius:100%;
	transform:translateY(-50%);
	box-shadow:0 0 0 1px var(--maincolor);
	transition:.3s;
}

.stylish-btn.active:before{
	background:var(--maincolor);
}

.stylish-textbox{
	padding-inline:1em;
	border:none;
	outline:none;
	color:#333;
}

::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: var(--maincolor);
  opacity: 1; /* Firefox */
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: var(--maincolor);
}

::-ms-input-placeholder { /* Microsoft Edge */
  color: var(--maincolor);
}

.p{
	line-height:1.5em;
}

.terms{
	font-weight:300;
	color:#aaa;
}

.terms a{
	color:inherit !important;
}

/*topbar*/

.topbar,
.footer{
	width:100%;
	z-index:100;
	background:rgba(0,0,0,.15);
	padding:1em 5vw;
	color:#fff;
	line-height:1.5em;
}

.topbar-btn{
	padding:.5em 1em;
	font-size:1.2em;
	font-weight:700;
	text-decoration: none;
	border-radius:99em;
	text-transform: uppercase;
	font-style:italic;
}

.topbar{
	display:flex;
	justify-content: space-between;
	flex-wrap:wrap;
}

.topbar > img{
	aspect-ratio:21/6;
	width:8em;
	object-fit: cover;
}

/*footer*/

.footer{
	text-align:center;
	font-size:.9em;
}

.footer a{
	color:inherit !important;
}

@media(max-width: 1200px){
	body{
		font-size: 14px;
	}

	.main-panel{
		max-width:80%;
	}

	.icon-grid{

		font-size:1.5vw;
	}
}

@media(max-width:1023px){
	.icon-grid{
		grid-template-columns: repeat(3,minmax(0,1fr));
		font-size:2vw;
	}


	body{
		font-size:12px;
	}

	.panel-upper{
		padding:1.5em;
		padding-left:calc(9vw + 1em);
	}
}

@media(max-width:767px){
	.main-panel{

		max-width:95%;
	}

	.icon-grid{

		font-size:3vw;
	}
}

@media(max-width:600px){

	.icon-grid{
		grid-template-columns: repeat(2,minmax(0,1fr));
		font-size:4vw;
		padding: initial;
	}

}
