@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600;700;800;900&family=Outfit:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;0,1000;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900;1,1000&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;0,800;0,900;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

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

body,html{
	font-family: var(--mainfont);
	font-size:16px;
	overflow-x:hidden;
}

:root{

	--c1-h: 32;
	--c1-s: 100%;
	--c1-l: 50%;

	--c1: hsl(var(--c1-h),
	 var(--c1-s), 
	var(--c1-l));

	/* light color version*/
	--c1-lighten: hsl(
	    var(--c1-h),
	    var(--c1-s),
	    calc(var(--c1-l) * 1.2)
	);

	/* dark color version*/
	--c1-darken: hsl(
	    var(--c1-h),
	    var(--c1-s),
	    calc(var(--c1-l) * .8)
	);

	--c1-desate: hsl(
	    var(--c1-h),
	    calc(var(--c1-s) * .6),
	    calc(var(--c1-l) * 1.4)
	);

	--c1-whiten: hsl(
	    var(--c1-h),
	    calc(var(--c1-s) * .4),
	    calc(var(--c1-l) * 1.8)
	);

	--c2-h: 197;
	--c2-s: 90%;
	--c2-l: 51%;

	--c2: hsl(var(--c2-h),
	 var(--c2-s), 
	var(--c2-l));

	/* light color version*/
	--c2-lighten: hsl(
	    var(--c2-h),
	    var(--c2-s),
	    calc(var(--c2-l) * 1.2)
	);

	/* dark color version*/
	--c2-darken: hsl(
	    var(--c2-h),
	    var(--c2-s),
	    calc(var(--c2-l) * .8)
	);

	--c2-desate: hsl(
	    var(--c2-h),
	    calc(var(--c2-s) * .6),
	    calc(var(--c2-l) * 1.4)
	);

	--mainfont: 'Poppins', sans-serif;
	--subfont: 'Outfit', sans-serif;
	--serif: 'Playfair Display', serif;

}

*{
	box-sizing:border-box;
}

.cw{
	width:100%;
	max-width:1100px;
	margin-inline:auto;
}

.btn-s{
	display:block;
	width:100%;
	text-align:center;
	text-decoration: none;
	max-width:max-content;
	padding:.25em 1em;
	transition:.3s background;
	font-family:var(--subfont);
}

.btn-s.btn-fw{
	max-width:100%;
}

.btn-s.c1{
	background:var(--c1);
	color:#fff;
}

.btn-s.c1-lighten:hover{
	background:var(--c1-lighten);
}

.btn-s.c1-darken:hover{
	background:var(--c1-darken);
}

.btn-s.c1-desate:hover{
	background:var(--c1-desate);
}

.btn-s.center{
	margin-inline:auto;
}

.btn-wht{
	background:#fff;
	color:var(--c1);
}

.btn-wht:hover{
	background:var(--c1-darken);
	color:#fff;
}

.btn-wt{
	color: #fff;
}

.section{
	padding:4em;
	padding-inline:2em;
}

.grid-row{
	display:grid;
}

/*typography*/

.s-t{
	font-size:2.5em;
	line-height:1.25em;
	font-weight:800;
	font-family:var(--subfont);
}

.s-h{
	font-size:2em;
	line-height:1.25em;
	font-weight:800;
	margin-bottom:.5em;
	color:var(--c1);
	text-transform: capitalize;
	font-family:var(--subfont);
}

.s-sh{
	font-size:1.15em;
	line-height:1.25em;
	font-weight:700;
	margin-bottom:.2em;
	font-family:var(--subfont);
}

.p{

	line-height:1.5em;
	margin-bottom:1em;
}

.spacer{
	height:3em;
}

/*topbar*/

.topbar-sticky{
	background:var(--c1);
	padding:.25em 2em;
	color:#fff;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	z-index:100;
}

.tb-inner{
	display:grid;
	grid-template-columns: 9em minmax(0,1fr);
	gap:.5em;
}

.tb-logo > svg{
	display:block;
	width:100%;
	aspect-ratio:21/9;
	padding-inline:1em;
	object-fit: cover;
}

.tb-logo > svg{
	fill:#fff;
}

.tb-logo > svg path{
	transition:.3s;
	
}

.tb-logo > svg:hover path{
	animation: bellshake .5s cubic-bezier(.36,.07,.19,.97) both;
}

.tb-logo > svg:hover path:not(.h2){

}

.tb-logo > svg:hover .h2{
	fill:var(--c2);

}

@keyframes bellshake {
  0% { transform: rotate(0); }
  15% { transform: rotate(2deg); }
  30% { transform: rotate(-2deg); }
  45% { transform: rotate(1deg); }
  60% { transform: rotate(-1deg); }
  75% { transform: rotate(1deg); }
  100% { transform: rotate(0); }
}

.tb-nav{
	display:flex;
	justify-content: flex-end;
	flex-wrap:wrap;
	gap:.25em 1em;
	align-items: center;
	font-size:.9em;
}

.tb-nav a{
	padding:.5em 1em;
	font-weight:700;
	text-decoration: none;
	text-align:center;
	text-transform: capitalize;
	color:#fff;
	border-radius:.25em;
	transition:.3s background, .3s transform;
}

.tb-nav a.emp{
	background:#fff;
	color:var(--c1);
	font-size:1.1em;
	box-shadow:0 .25em 1em .1em rgba(0,0,0,.15);
}

.tb-nav a:hover{
	background:#fff;
	box-shadow:0 .25em 1em .1em rgba(0,0,0,.15);
	color:var(--c1);
}

.tb-nav a.emp:hover{
	background:var(--c1-darken);
	color:#fff;
	transform:scale(1.05);
}

/*section1*/

.s1{
	position: relative;
	isolation:isolate;
	text-align:center;
}

.s1-row .col1 .s-t{
	text-shadow:1px 2px 3px rgba(0,0,0,.3);
}

.s1 .s-bg{
	position: absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit: cover;
	z-index:-1;
}

.s1-row{
	display:grid;
	grid-template-columns: minmax(0,4fr) minmax(0,3fr);
	gap:3em;
}

.s1-row .col1{
	color:#fff;
}

.form-panel{
	background:var(--c1-whiten);
	padding:5%;
}

.main-img{
	position: relative;
	isolation: isolate;
	aspect-ratio:4/3;
}

.main-img img{
	position: absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit: contain;
	pointer-events: none;
	z-index:0;
}

.main-img .circle{
	width:7.25em;
	aspect-ratio: 1/1;
	background:#ff0000;
	color:#fff;
	text-align: center;
	position: absolute;
	z-index:1;
	top:50%;
	left:50%;
	transform: translate(-50%, -100%);
	border-radius:99em;
	display:flex;
	align-items: center;
	justify-content: center;
	font-weight:700;
	font-size:1.3em;
	line-height:1em;
}

.circle > div{

	transform:rotate(9deg);
}

.main-img .circle span{
	font-size:.7em;
}

/*section2*/

.s2-row{
	display: grid;
	grid-template-columns: minmax(0,4fr) minmax(0,5fr);
	gap:2em;
	margin-bottom:2em;
}

.s2-row.style2{
	grid-template-columns: minmax(0,5fr) minmax(0,4fr);
}

.s2-row > div{
	position: relative;
}


.s-img{
	position: absolute;
	inset:0;
	display:block;
	width:100%;
	height:100%;
	border-radius:.3em;
	object-fit: cover;
}

.s-btn{
	padding:.5em 1em;
	font-weight:700;
	font-size:1.75em;
	border-radius:.15em;
}


.grid-row.grid-fit{
	grid-template-columns: repeat(auto-fit,minmax(0,1fr));
	gap:2em;
}

.icon-circle{
	width:7em;
	display:block;
	aspect-ratio:1/1;
	margin:1em auto 2em;
	border-radius:99em;
	position: relative;
	box-shadow:0 .25em .4em .1em rgba(0,0,0,.15);
	transition:.3s;
	position: relative;
	isolation:isolate;
	overflow:hidden;
}

.icon-circle::before{
	inset:0;
	position: absolute;
	background:var(--c1);
	content:'';
	z-index:-2;
	transform:scale(0);
	transition:.3s;
	border-radius:99em;
}

.icon-circle > svg{
	position: absolute;
	width:65%;
	top:50%;
	left:50%;
	display:block;
	aspect-ratio:1/1;
	transform:translate(-50%, -50%);
	fill:var(--c1);
	transition:.3s;
	object-fit: contain;
	
}

.panel-with-circle{
	padding:1em 5%;
	text-align:center;
}

.icon-circle:hover::before{
	transform:scale(1);
}

.icon-circle:hover > svg{
	fill:#fff;
}

/*steps with horizontal line*/
.progress-list{
	counter-reset: prog;
	width:100%;
	max-width:max-content;
	margin-inline: auto;
	padding:1em 0;
}

.progress-list > div{
	display:grid;
	grid-template-columns: 4em minmax(0,1fr);
	position: relative;
	counter-increment: prog;
	gap:2em;
}

.progress-list > div > .counter{
	min-width:4em;
	position: relative;
}

.progress-list > div > .counter:before{
	position: absolute;
	/*top:50%;
	transform: translateY(-50%);*/
	top:0;
	left:0;
	width:2em;
	aspect-ratio: 1/1;
	background:var(--c1);
	color:#fff;
	content:counter(prog);
	display:flex;
	align-items: center;
	justify-content: center;
	font-size:2em;
	border-radius:99em;
	font-weight:800;
}

.progress-list > div > .counter:after{
	position: absolute;
	height:100%;
	width:4px;
	left:50%;
	top:2em;
	transform:translateX(-50%);
	background:var(--c1);
	content:'';
	z-index:-1;
}

.progress-list > div > .inner{

	padding:0 0 2em;
}


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

/*section3*/

.s3-fancydisplay{
	display:grid;
	grid-template-columns: minmax(0,3fr) minmax(0,4fr) minmax(0,3fr);
	grid-template-areas:
	"a1 fimg a2"
	"a3 fimg a4";
	gap:1em;
	padding-block:5em;
}

.s3-fancydisplay > div{
	position: relative;
}

.s3-fancydisplay > div::before{
	content:'';
	background:url('../img/arrow.png');
	aspect-ratio:16/9;
	width:7em;
	position: absolute;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.fancy-img{
	grid-area: fimg;
	display:block;
	object-fit: contain;
	width:100%;
	height:100%;
	transform:rotate(188deg) scaleY(-1);
	pointer-events: none;
}

.area1{
	grid-area: a1;
	transform:translateY(10%);
}

.area2{
	grid-area: a2;
	transform:translateY(-30%) translateX(-15%);
}

.area3{
	grid-area: a3;
	transform:translateY(30%) translateX(25%);
}

.area4{
	grid-area: a4;
	transform:translateY(30%);
}

.area1::before{
	right:-1em;
	top:-2em;
	transform:scaleX(-1) translateX(-100%) rotate(15deg);
}

.area2::before{
	top:2em;
	left:-3em;
	transform:translateX(-100%);
}

.area3::before{
	top:-3em;
	right:0em;
	transform:translateY(-100%) rotate(90deg) scaleY(-1);
}

.area4::before{
	top:-3em;
	left:-3em;
	transform:translateY(-100%) rotate(60deg);
}

.s3-fancydisplay .p > b:first-child{
	color:var(--c1);
}

.s3-fancydisplay .p{
	background:#fff;
	border:.25em solid var(--c1);
	padding:1em;
	border-radius:.50em;
}

/*faq*/

.s4 .s-h{
	font-size:3em;
}

.faq .s-t{
	margin-bottom:1em;
}

.faq .p{
	font-weight:400;
}

.faq-panel{
	display:grid;
	grid-template-columns: 1fr;
	background: #d9d9d9;
	padding-block:1em;
	gap:.5em;
	padding-inline:1.5em;
	margin-bottom: 1.5em;
}

.faq-panel > .panel-toggle{
	font-weight:600;
	display:block;
	color:#000 !important;
	text-decoration: none;
	text-transform: capitalize;
	font-size:1.2em;
	position: relative;
	padding-right:2em;
}

.panel-toggle:after{
	content:'';
	position: absolute;
	top:50%;
	transform:translateY(-50%);
	right:.5em;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: .4em .4em 0 .4em;
	border-color: #000 transparent transparent transparent;
}

.faq-panel.active .panel-toggle:after{

	transform:translateY(-50%) rotate(180deg);
}

.faq-panel .p:not(:last-child){
	margin-bottom:1em;
}

.p.ul > div{
	padding-left:1.5em;
	position: relative;
	margin-bottom:.2em;
}

.p.ul > div:before{
	content:'';
	width:.4em;
	aspect-ratio:1/1;
	position: absolute;
	top:.6em;
	left:.6em;
	background:#000;
	border-radius:99em;
}

.faq-content{

	transition:.3s opacity;
}

.faq-panel:not(.active) .faq-content{
	position: fixed;
	transform:translateY(-100%);
	opacity:0;
}

.faq-panel.active .faq-content{
	display:block;
	position: relative;
	transform:translateY(0%);
	opacity:1;
}

/*footer*/

.footer{
	background:#1e1e1e;
	color:#fff;
	padding-top:10em;
}

.footer .s-h{
	font-size:1.2em;
	color:#fff;
}

.footer-flex{
	display:flex;
	gap:2em;
}

.footer-logo{
	display:block;
	aspect-ratio:21/9;
	object-fit: contain;
	width:10em;
}

.footer-flex > div:first-child{
	margin:0 auto 0 0;
}

.footer-flex > div:last-child{
	margin:0 0 0 auto;
	text-align: right;
}

.footer-links{
	display:flex;
	flex-direction: column;
	gap:1em;
}

.footer-links a{
	color:#fff;
}

.footer-flex .tb-logo{
	max-width:12em;
}

/*coloredpanel*/

.panel-c1{
	background:var(--c1);
	color:#fff;
	padding:5%;
	border-radius:.3em;
	display:grid;
	grid-template-columns: minmax(0,5fr) minmax(0,4fr);
	gap:2em;
	text-shadow:1px 2px 3px rgba(0,0,0,.3);
	transform: translateY(50%);
}

.panel-c1 > div{
	position: relative;
}

.panel-c1 .s-h{
	color:#fff;

}

.panel-c1 .btn-s{
	padding:.6em 1em;
	font-size:1.5em;
	font-weight:700;
	border-radius:.15em;
	text-shadow:none;
}

.panel-c1 .s-img{
	object-fit: none;
	object-position: center;
}

/*questionare*/

.q-list > div:not(:first-child){
	display:none;
}

.answer-grid{
	display:grid;
	grid-template-columns: repeat(2,minmax(0,1fr));
	gap:1em 2em;
	margin-top:1em;
}

.form-panel .s-h{
	font-size:1.5em;
	color:#000;
}

.answer-grid .btn-s{
	max-width: 100%;
	display:flex;
	align-items: center;
	justify-content: center;
	padding-block:1em;
	border-radius:.15em;
	box-shadow:0 .15em .25em .15em rgba(0,0,0,.05);
}

.answer-grid .btn-wht{
	color:#000 !important;
}

.answer-grid .btn-wht:hover{
	background:#e9e9e9 !important;
}

.answer-grid .btn-s.active{
	background:var(--c1) !important;
	color:#fff !important;
}

.q-counter{
	display:grid;
	gap:.3em;
	grid-template-columns: repeat(auto-fit,minmax(0,1fr));
	margin:.5em auto 1em;
}

.q-counter > div{
	background:#353333;
	height:.25em;
	border-radius:99em;
}

.q-counter > div.active ~ div{
	background:#9d9b99;

}

.q-astrip{
	display:grid;
	grid-template-columns: repeat(auto-fit,minmax(0,1fr));
	margin-top:1.5em;
	gap:1em;
}

.q-astrip .btn-s{
	max-width:100%;
	padding-block:.65em;
	font-size:1.2em;
	border-radius:.15em;
}

.q-textbox{
	width:100%;
	border-radius:.15em;
	border:1px solid #ccc;
	padding:1em .75em;
	outline:none;
	margin-block:.5em;
}

.p.smol.terms{
	font-size:.7em;
	text-align:left;
	line-height:1.25em;
	color:#666;
}

.whyareweasking{
	display:inline-block;
	font-family: var(--subfont);
	color:#666;
	margin-block:1em;
}

/*modal*/

.modal{
	position: fixed;
	inset:0;
	background:rgba(0,0,0,.30);
	z-index:100;
	display:flex;
	align-items: center;
	justify-content: center;
	padding:10% 15%;
	backdrop-filter: blur(.3em);
	transform:translateY(-100%);
	opacity:0;
	transition:.5s opacity;
}

.modal-panel{
	border-radius: .15em;
	display:block;
	background:var(--c1-whiten);
	width:100%;
	max-width:460px;
	box-shadow:0em 1em 3em .1em rgba(0,0,0,.3);
	padding-block:1em;
}

.modal-body,
.modal-lower{
	padding:.75em 1.5em;
}

.modal-lower{
	border-top:1px solid var(--c1-darken);
}

.modal-lower .btn-s{
	padding:1em;
	font-size:1.2em;
	border-radius:.15em;
}

.modal.active{
	transform: translateY(0%);
	opacity:1;
}

.modal:not(.active){
	transition:;
}

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

	.s3-fancydisplay{
		font-size:1.5vw;
	}
}

@media(max-width:900px){
	body{
		font-size:12px;
	}

	.tb-nav{
		gap:.25em .5em;
	}

	.tb-nav a{
		padding-inline:.5em;
	}
}

@media(max-width:767px){
	.s2-row{
		grid-template-columns: 1fr !important;
	}

	.s-img{
		display:block;
		position: relative;
		aspect-ratio:26/9;
	}

	.tb-nav > a:not(.emp){
		display:none;
	}

	.s1-row{
		grid-template-columns: 1fr;
		gap:0;
		background:var(--c1-whiten);
		border-radius:1em;
		overflow: hidden;
	}

	.s1-row > div.col1{
		font-size:1.5vw;
		padding:5% 5% 0;
	}

	.s1-row > div.col1 .s-t{
		font-size:4em;
		color:#000;
		text-shadow: none;
	}

	.main-img{
		max-width:80%;
		margin-inline:auto;
	}

	.main-img .circle{
		font-size:2em;
	}

	.panel-c1{
		transform:translateY(0%);
	}
}

@media(max-width:660px){

	.section{
		padding-inline:1.25em;
	}

	.grid-row,
	.panel-c1{
		grid-template-columns: 1fr !important;
		gap:1em !important;
	}

	.grid-row > div{
		padding-block:0;
	}

	.s3-fancydisplay{
		grid-template-columns: 9em minmax(0,1fr);
		grid-template-areas: 
		"fimg a1"
		"a2 a2"
		"a3 a3"
		"a4 a4";
		font-size:1.2em;
		gap:1.5em 1em;
		padding-block:0;
		align-items: flex-end;
	}

	.fancy-img{
		max-width:12em;
	}

	.s3-fancydisplay > div{
		inset:initial;
		transform:initial;
	}

	.s3-fancydisplay > div::before{
		display:none;
	}

	.s3-fancydisplay > div .p{
		border:none;
		background:#fff;
		padding:0;
		margin-bottom:0;
	}
}