@import url('https://fonts.googleapis.com/css2?family=Rubik:wght@200;300;400;500;600;700;800&display=swap');

@import url('https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.10.2/font/bootstrap-icons.min.css');

body,html{
	font-family: 'Rubik', sans-serif;
	font-size:16px;
	overflow-x:hidden;
	background:#DAE8F1;
}

a:link{
	text-decoration:none;
	color: #fff;}
a:visited{
	text-decoration:none;
	color:#fff;}

:root{
	--color1:197;
	--satur1:90%;
	--light1:51%;
	--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:#70A457;
}

*{
	box-sizing:border-box;
}

.cw{
	width:100%;
	max-width:1100px;
	margin:0px auto;
}

.btn1{
	--trim: var(--maindarker);
	background:var(--maincolor);
	border-radius: 80px;
}

.btn1:hover{
	background:var(--maindarker);
}

.btn2{
	--trim: var(--subdarker);
	background:var(--subcolor);
}

.btn2:hover{
	background:var(--subdarker);
}

.btn-wt{
	color: #fff;
}

.p{
	line-height:1.5em;
}

.imgfw{
	display:block;
	width:100%;
	height:auto;
}

/*topbar*/

.topbar{
	background:rgba(255,255,255,.1);
	padding:0.7em;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	z-index:100;
	transition:.3s background;
	pointer-events:none;
}

.topbar.alt{
	background:hsla(var(--color1) ,var(--satur1), var(--light1),.5);
}

.tb-flex{
	display:flex;
	flex-wrap:wrap;
	gap:1em;
	justify-content: space-between;
	align-items: center;
}

.tb-flex > div{
	pointer-events: initial !important;
}

.tb-logo{
	aspect-ratio:16/7;
	object-fit: contain;
	width:9em;
	display:block;
	margin-inline:auto;
}

.tb-cta{
	padding:.75em 2em;
	padding-left:4em;
	border-radius:99em;
	display:block;
	color:#fff;
	text-decoration: none;
	font-weight:600;
	line-height:1.25em;
	position:relative;
}

.tb-cta:first-line{
	font-size:.8em;
	font-weight:400;
	color:#ECE3D8;
}

.tb-cta .bi{
	position: absolute;
	top:50%;
	left:1em;
	transform:translateY(-50%);
	border-radius:99em;
	border:1px solid #fff;
	aspect-ratio:1/1;
	width:2em;
	display:flex;
	align-items: center;
	justify-content: center;
}

.herobanner{
	aspect-ratio:24/9;
	width:100%;
	background-color:#e9e9e9;
	position:relative;
	isolation:isolate;
	color:#fff;
	font-size:1vw;
}

.herobanner:before{
	content:'';
    z-index: 0;
    background: linear-gradient(90deg, rgb(170, 220, 145) 0%, rgba(0, 52, 120, 0.1) 70%, rgba(0, 52, 120, 0.1) 100%);
    color: rgb(255, 255, 255);
    position:absolute;
    width: 100%;
    height: 100%;
    transform-origin: 50% 50%;
    opacity: 1;
    transform: translate(0px, 0px);
    visibility: visible;
}

.bannerimg{
	position: top;
	width:100%;
	height:100%;
	z-index:-1;
	object-fit: cover;
	pointer-events:none;
}

.banner-text{
	position: absolute;
	z-index:1;
	width:100%;
	top:50%;
	transform:translateY(-50%);
	padding-left:18vw;
}

.banner-h{
	font-size:2.7em;
	font-weight:700;
	text-transform: uppercase;
	margin-bottom:.25em;
}

.banner-sh{
	font-weight:300;
	font-size:1.2em;
	text-transform: uppercase;
	margin-bottom:.5em;
}

.banner-astrip{
	display:flex;
	gap:1em;
	align-items: center;
	font-size:.8em;
}

.banner-astrip > a{
	border:1px solid #fff;
	padding:1em 1.5em;
	text-transform: uppercase;
	text-decoration: none;
	border-radius:80px;
	font-weight:600;
	transition:.3s background, .3s color;
}

.btn-wt{
	background:#fff;
	color:var(--maincolor);
}

.btn-x{
	background:transparent;
	color:#fff;
}

.banner-astrip a:hover{
	background:var(--maincolor);
	color:#fff;
}

/*main*/

.main{
	padding:2em 2em;
}

.panel{
	padding:2em 1em;
	background:#fff;
	position: relative;
	text-align:center;
	border:1px solid #edeff2;
	border-radius:.3em;
}

.panel.style2{
	max-width:768px;
	margin-inline:auto;
	box-shadow: 0px 25px 50px 0px rgb(0 0 0 / 7%);
}

.panel.style2 .m-sh{
	font-weight:300;
	color:#7f99bb;
}

.panel-overlap{
	top:-7em;
	margin-bottom:-4em;
}

.m-h{
	color:var(--maincolor);
	font-size:2em;
	font-weight:700;
	text-transform: uppercase;
	margin-bottom:.5em;
	position: relative;
	text-align:center;
}

.m-h.style2{
	font-size:1.5em;
	text-align:center;
	font-weight:400;
	letter-spacing: -.05em;
}

.m-sh{
	color:rgba(0,0,0,.5);
	font-size:1.3em;
	font-weight:500;
	letter-spacing: -.05em;
	text-align:center;
	margin-bottom:1em;
}

.panel-grid{
	display:grid;
	gap:1.5em;
	grid-template-columns: repeat(3,minmax(0,1fr));
	margin-bottom:3em;
}

.panel-grid > .panel{
	padding-inline:10%;
	border-radius: 5px;
	padding-bottom:10%
}

.panel-h{
	color:var(--maincolor);
	text-transform: uppercase;
	margin-bottom:.5em;
	font-size:1.4em;
	font-weight:700;
}

.panel-icon{
	display:flex;
	aspect-ratio:1/1;
	width:2.5em;
	margin-inline:auto;
	border:2px groove #70A457;
	border-radius:99em;
	align-items: center;
	justify-content: center;
	font-size:2em;
	color:var(--maincolor);
	margin-bottom:1em;
}

.stylish-h{
	display:flex;
	justify-content: center;
	gap:3em;
	color:var(--maincolor);
	align-items: center;
	margin-bottom:3em;
}

.stylish-h .m-h{
	text-align:right;
	margin-bottom:0;
}

.stylish-h .m-h:after{
	content:'';
	position: absolute;
	right:-.75em;
	top:0;
	height:100%;
	width:5px;
	background:var(--maincolor);
}

.stylish-h .p{
	font-size:1.2em;
	text-align:left;
}

.banner1{
    box-shadow: 0px 20px 40px 0px rgb(0 52 120 / 10%);
    border-radius:.25em;
    margin-bottom:3em;
}

.cta-btn{
	padding:.75em 1em;
	color:#fff !important;
	text-decoration: none;
	font-weight:600;
	text-transform: uppercase;
	display:block;
	font-size:1.3em;
	max-width:230px;
	margin-inline:auto;
	text-align:center;
	border-radius:80px;
}

/*section1*/

.s1{
	--bg:#f4f8fe;
	background:var(--bg);
	padding:3em 2em;
}

.plans-grid{
	display:grid;
	gap:1px;
	background:#70A457;
	grid-template-columns: repeat(2 ,minmax(0,1fr));
	font-size:1.1em;
}

.plans-grid > div{
	background:var(--bg);
	display:grid;
	grid-template-areas:"h h"
	"i t";
	grid-template-columns: 4em minmax(0,1fr);
	gap:1em 1.5em;
	padding:1.25em 1.5em  1.5em;
}

.plans-icon{
	aspect-ratio:1/1;
	width:100%;
	object-fit: contain;
	grid-area:i;
}

.plans-h{
	grid-area:h;
	font-size:1.4em;
	font-weight:700;
	color:var(--maincolor);
	letter-spacing: -.05em;
}

.plans-text{
	grid-area:t;
}

.plans-text > *:not(:last-child){
	margin-bottom:1em;
}

.plans-text a{
	color:var(--maincolor);
	font-weight:600;
	text-transform: uppercase;
}

/*disclaimer*/

.p.disc{
	background:#70A457;
	border-left:5px solid #bcdff1;
	padding:1em 1.5em;
	font-size:.8em;
	line-height:1.75em;
	color:#31708f;
}

.p.disc:first-line{
	font-size:1.2em;
	font-weight:700;
	line-height:2em;
}

/*footer*/

.footer{
	background:var(--maindarker);
	text-align:center;
	color:#fff;
	padding:5em 2em;
	font-size:.8em;

}

.footer > a{
	text-decoration: none;
}

.footerlogo{
	display:block;
	aspect-ratio:16/9;
	max-width:6em;
	margin-inline:auto;
	object-fit: contain;
}

@media(max-width: 1200px){
	body{
		font-size: 14px;
	}

	.herobanner{
		aspect-ratio:20/9;
		font-size:1.25vw;
	}

	.banner-text{
		padding-left:10vw;
	}
}

@media(max-width:1023px){
	body{
		font-size:12px;
	}
}

@media(max-width:767px){
	.topbar{
		width:100%;
		height:100%;
		padding:0;
		background:none !important;
		z-index:100;
	}

	.topbar > .cw{
		max-width:100%;
		height:100%;
	}

	.tb-flex{
		flex-direction: column;
		width:100%;
		height:100%;
	}

	.tb-flex > div{
		padding:.25em 1em;
		width:100%;
		background:rgba(255,255,255,.1);
		backdrop-filter: blur(2em);
		transition:.3s background;
	}

	.topbar.alt .tb-flex > div{
		background:hsla(var(--color1) ,var(--satur1), var(--light1),.5);
	}

	.tb-flex > div:last-child{
		padding:1em 1em;
		display:flex;
		justify-content: center;
	}

	.herobanner{
		aspect-ratio:5/3;
		font-size:2vw;
	}

	.banner-astrip{
		font-size:1em;
	}

	.m-h{
		font-size:1.8em;
	}

	.main,
	.s1{
		padding-inline:1em;
	}

	.panel-grid{
		gap:1vw;
	}

	.footer{
		padding-bottom:100px;
	}

	.footer > a{
		padding-bottom:100px;
		text-decoration: none;
	}

	.plans-grid{
		grid-template-columns: 1fr;
	}

	.plans-grid > div{
		grid-template-areas:"i h"
		"i t";
	}
}

@media(max-width:480px){
	.herobanner{
		aspect-ratio:4/3;
		font-size:2vw;
	}

	.panel-grid{
		grid-template-columns: 1fr;
		gap:1em;
	}

	.banner-sh{
		font-size:1.75em;
	}
}
