@media screen and (max-width: 1400px) {
	html {
		--devicemax: 85% !important;
	}

	.header .links {
		gap: 20px !important;
	}

	.pricing .plans {
		gap: 20px !important;
	}

	.why .grid,
	.team .grid {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 60px 35px !important;
	}

	.footer {
		width: calc(100% - 200px) !important;
		padding: 100px 100px 65px 100px !important;
	}

	.footer .top .links {
		gap: 50px !important;
	}

	.footer .top .group:has(img) {
		max-width: 500px !important;
	}
}

@media screen and (max-width: 1200px) {
	.header {
		flex-direction: column;
		gap: 20px;
		top: 25px !important;
	}

	.pricing .plans {
		flex-wrap: wrap;
	}

	.why .grid,
	.team .grid {
		grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
	}

	.footer .top {
		flex-direction: column;
		gap: 50px !important;
	}
}

@media screen and (max-width: 900px) {
	.topBar {
		flex-direction: column !important;
		padding: 30px 0 !important;
	}

	.header {
		width: calc(var(--devicemax) - 10%) !important;
	}

	.hero {
		flex-direction: column-reverse;
		align-items: flex-start !important;
		gap: 20px !important;
	}

	.hero img {
		max-height: 300px;
	}

	.features .grid {
		gap: 50px 0;
	}

	.cta .split {
		flex-direction: column-reverse;
		align-items: flex-start !important;
		gap: 30px !important;
	}

	.cta .split img {
		max-height: 200px;
	}

	.footer .top .links {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media screen and (max-width: 600px) {
	.topBar .group {
		justify-content: space-between;
		gap: 10px !important;
		width: 100%;
	}

	.header {
		width: 95% !important;
		padding: 20px 0 !important;
		height: 40px;
		overflow: hidden;
	}

	.header:hover {
		height: 100% !important;
	}

	.header img {
		height: 42px;
	}

	.header .links {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		justify-items: start;
	}

	.header .links a {
		width: 100%;
	}

	.hero .buttons {
		flex-direction: column;
		align-items: flex-start !important;
	}

	.hero .buttons .button {
		width: -webkit-fill-available !important;
	}

	.info * {
		text-align: center;
	}

	.features .grid {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.features .grid .feature .icon {
		scale: 1 !important;
		margin-bottom: 0 !important;
	}

	.pricing .plans .plan .heading {
		flex-direction: column-reverse;
		align-items: flex-start !important;
		gap: 20px !important;
	}

	.pricing .plans .plan .heading .save {
		flex-direction: row-reverse !important;
	}

	.footer {
		width: calc(100% - 100px) !important;
		padding: 100px 50px 65px 50px !important;
	}

	.footer .top .links {
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}
}

html {
	--text: #ffffff;
	--text-light: #ffffffc2;
	--text-lighter: #ffffff99;
	--text-lightest: #ffffff6b;
	--color3: #60a3e6;
	--color4: #27d3ff;
	--background: #1451f9;
	--dark-background: #000045;
	--gradient: linear-gradient(97deg, #1451f9 0%, #27d3ff 100%);
	--gradient45: linear-gradient(160deg, #1451f9 0%, #27d3ff 100%);
	--devicemax: 75%;
	scroll-behavior: smooth;
}

body {
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	background: var(--dark-background);
	color: var(--text);
	font-family: "Inter", sans-serif;
}

::-webkit-scrollbar {
	background: var(--color4);
	width: 10px;
}

* {
	transition: 0.5s;
	margin: 0;
	font-family: Inter;
}

a {
	text-decoration: none;
	cursor: pointer;
	color: var(--text);
}

a:hover {
	color: var(--color4);

	path {
		fill: var(--color4);
	}
}

.button {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 12px 27px;
	border-radius: 25px;
	background: var(--gradient);
	gap: 10px;
	width: max-content;
	font-size: 16px;
	font-weight: 400;
}

.button:hover {
	color: white;
	opacity: 0.8;
}

.button.border {
	background: transparent;
	border: 1px solid var(--text);
}

.topBar {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	height: 65px;
	width: var(--devicemax);
	max-width: 1600px;
	padding: 7px 0;
	gap: 10px;

	* {
		transition: 0.1s;
	}

	.group {
		display: flex;
		align-items: center;
		gap: 50px;

		a {
			display: flex;
			align-items: center;
			gap: 10px;
			font-size: 14px;
			font-weight: 400;
			line-height: 24px;
		}

		a:hover {
			color: var(--text-light);

			svg path {
				fill: var(--text-light);
			}
		}
	}
}

.header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: var(--devicemax);
	max-width: 1600px;
	padding: 15px 50px;
	border-radius: 5px;
	background: var(--text-lightest);
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
	position: sticky;
	top: 50px;
	z-index: 100;

	* {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.links {
		gap: 31px;
	}

	.buttons {
		gap: 18px;
	}
}

.hero {
	display: flex;
	width: var(--devicemax);
	max-width: 1600px;
	padding: 40px 0;
	justify-content: space-between;
	align-items: center;
	align-content: center;
	gap: 100px;

	> div {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 30px;
	}

	h1 {
		width: 100%;
		font-size: 40px;
		font-weight: 700;
	}

	p {
		color: var(--text-light);
		font-size: 18px;
		font-weight: 400;
		line-height: 32px;
	}

	.buttons {
		display: flex;
		align-items: center;
		gap: 20px;
	}

	.button {
		padding: 15px 30px;
		border-radius: 25px;
	}

	img {
		max-width: min(500px, 100%);
	}
}

.features {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: var(--devicemax);
	max-width: 1600px;
	padding: 85px 0;
	gap: 55px;

	.info {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 15px;

		h1 {
			font-size: 40px;
			font-weight: 600;
		}

		h5 {
			color: var(--text-light);
			font-size: 18px;
			font-weight: 400;
		}
	}

	.grid {
		display: flex;
		justify-content: space-between;
		align-items: center;
		align-content: center;
		flex-wrap: wrap;
		min-height: 300px;

		.feature {
			display: flex;
			flex-direction: column;
			align-items: center;
			gap: 20px;
			min-width: 160px;

			.icon {
				display: flex;
				flex-direction: column;
				justify-content: center;
				align-items: center;
				width: 120px;
				height: 120px;
				border-radius: 100px;
				background: var(--gradient);
				margin-bottom: -100px;
				scale: 1.5;
			}

			h4 {
				font-size: 24px;
				font-weight: 500;
			}

			p {
				color: var(--text-lighter);
				font-size: 18px;
				font-weight: 400;
			}
		}

		.feature:hover .icon {
			rotate: 5deg;
			margin-bottom: 0 !important;
			scale: 1 !important;
		}
	}
}

.pricing {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: var(--devicemax);
	max-width: 1600px;
	padding: 70px 0;
	gap: 60px;

	.info {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 15px;

		h1 {
			font-size: 40px;
			font-weight: 600;
		}

		p {
			color: var(--text-light);
			font-size: 18px;
			font-weight: 400;
		}
	}

	.toggleContainer {
		position: relative;
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		width: fit-content;
		border: 5px solid var(--text);
		border-radius: 50px;
		background: var(--text);
		color: var(--text);
		font-size: 16px;
		font-weight: 400;
		cursor: pointer;
	}

	.toggleContainer::before {
		content: "";
		position: absolute;
		width: 50%;
		height: 100%;
		left: 0%;
		border-radius: 50px;
		background: var(--gradient);
		transition: all 0.3s;
	}

	.toggleCheckbox:checked + .toggleContainer::before {
		left: 50%;
	}

	.toggleContainer div {
		padding: 15px 30px;
		text-align: center;
		z-index: 1;
	}

	.toggleCheckbox {
		display: none;
	}

	.toggleCheckbox:checked + .toggleContainer div:first-child {
		color: var(--dark-background);
		transition: color 0.3s;
	}

	.toggleCheckbox:checked + .toggleContainer div:last-child {
		color: var(--text);
		transition: color 0.3s;
	}

	.toggleCheckbox + .toggleContainer div:first-child {
		color: var(--text);
		transition: color 0.3s;
	}

	.toggleCheckbox + .toggleContainer div:last-child {
		color: var(--dark-background);
		transition: color 0.3s;
	}

	.plans {
		display: flex;
		justify-content: center;
		align-items: center;
		align-content: center;
		gap: 70px;
		display: none;

		.plan {
			display: flex;
			flex-direction: column;
			align-items: flex-start;
			padding: 40px 35px;
			gap: 30px;
			border-radius: 30px;
			border: 0.5px solid var(--text-lighter);
			position: relative;
			overflow: hidden;

			+ .active {
				background: var(--gradient45);
				border: transparent;

				.button {
					background: var(--background);
				}
			}

			h4 {
				color: var(--text-lighter);
				font-size: 22px;
				font-weight: 500;
			}

			.heading {
				display: flex;
				align-items: flex-end;
				gap: 55px;

				h1 {
					font-size: 37.886px;
					font-weight: 600;

					sub {
						font-size: 23.314px;
					}
				}

				.save {
					display: flex;
					flex-direction: column;
					justify-content: flex-end;
					align-items: flex-start;
					gap: 5px;

					s {
						color: var(--text-light);
						font-style: normal;
						text-decoration-line: strikethrough;
					}

					h5 {
						color: var(--color4);
						font-size: 18px;
						font-weight: 600;
					}
				}
			}

			p {
				align-self: stretch;
				font-size: 18px;
				font-weight: 400;
				line-height: 26px;
			}

			.list {
				display: flex;
				flex-direction: column;
				align-items: flex-start;
				gap: 20px;

				.item {
					display: flex;
					align-items: center;
					gap: 15px;
				}
			}

			.button {
				width: -webkit-fill-available;
				padding: 20px 70px;
				border-radius: 50px;
			}
		}

		.plan:hover {
			scale: 1.05;
			rotate: 1deg;
		}

		.plan::before {
			background: var(--gradient);
			content: " ";
			position: absolute;
			top: 0;
			left: 100%;
			width: 100%;
			height: 100%;
			z-index: -1;
			transition: 0.5s;
		}

		.plan:hover::before {
			left: 0;
		}
	}
}

.why {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: var(--devicemax);
	max-width: 1600px;
	padding: 100px 0;
	gap: 80px;

	.info {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 20px;

		h1 {
			font-size: 40px;
			font-weight: 600;
		}

		p {
			color: var(--text-light);
			font-size: 18px;
			font-weight: 400;
		}
	}

	.grid {
		display: flex;
		justify-content: center;
		align-items: center;
		align-content: center;
		gap: 30px;

		.reason {
			display: flex;
			flex-direction: column;
			justify-content: center;
			align-items: flex-start;
			min-height: 100px;
			padding: 50px 35px 40px 35px;
			gap: 15px;
			position: relative;
			border-radius: 30px;
			background: var(--gradient);

			.icon {
				display: flex;
				flex-direction: column;
				justify-content: center;
				align-items: center;
				width: 80px;
				height: 80px;
				gap: 10px;
				position: absolute;
				left: 25px;
				top: -40px;
				border-radius: 100px;
				background: var(--color4);
			}

			h3 {
				font-size: 26px;
				font-weight: 600;
			}

			p {
				font-size: 16px;
				font-weight: 400;
			}
		}
	}
}

.cta {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: var(--devicemax);
	max-width: 1600px;
	padding: 100px 0;
	gap: 60px;

	.info {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 15px;

		h1 {
			text-align: center;
			font-size: 40px;
			font-weight: 600;
		}

		p {
			color: var(--text-light);
			text-align: center;
			font-size: 18px;
			font-weight: 400;
		}
	}

	.split {
		display: inline-flex;
		align-items: center;
		gap: 80px;

		.left {
			display: flex;
			flex-direction: column;
			align-items: flex-start;
			gap: 23px;

			h1 {
				font-size: 32px;
				font-weight: 600;
			}

			p {
				color: var(--text-light);
				font-size: 16px;
				font-weight: 400;
				line-height: 22px;
			}

			.button {
				padding: 20px 25px;
				border-radius: 50px;
			}
		}

		img {
			max-width: 500px;
		}
	}
}

.footer {
	display: flex;
	flex-direction: column;
	justify-content: end;
	align-items: center;
	width: calc(100% - 400px);
	padding: 100px 200px 65px 200px;
	gap: 90px;
	background: var(--text-lightest);
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);

	.top {
		display: flex;
		justify-content: space-between;
		align-self: stretch;
		gap: 120px;

		.links {
			display: flex;
			align-items: flex-start;
			align-self: stretch;
			gap: 120px;
		}

		.group {
			display: flex;
			flex-direction: column;
			align-items: flex-start;
			gap: 7px;

			img {
				padding: 7px 10px;
				border-radius: 10px;
				border: 3px solid var(--color4);
				background: var(--dark-background);
			}

			.toTop {
				position: relative;
				overflow: hidden;
			}

			.toTop::after {
				content: "To Top";
				position: absolute;
				bottom: -30px;
				left: 0;
				width: 100%;
				height: 30px;
				background: var(--color4);
				border-radius: 10px;
				z-index: 1;
				display: flex;
				align-items: center;
				justify-content: center;
				transition: 0.5s;
			}

			.toTop:hover::after {
				bottom: 0%;
				color: var(--text);
			}

			p {
				font-size: 16px;
				font-weight: 400;
				line-height: 24px;
			}

			.icons {
				display: flex;
				align-items: flex-start;
				gap: 25px;

				a:hover path {
					fill: var(--color4);
				}
			}

			h3 {
				font-size: 20px;
				font-weight: 600;
			}

			a {
				font-size: 16px;
				font-weight: 400;
				width: max-content;
			}
		}

		.group:has(img) {
			gap: 20px;
			max-width: 400px;
		}
	}

	.bottom p {
		font-size: 16px;
		font-weight: 400;
	}
}

.team {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: var(--devicemax);
	max-width: 1600px;
	padding: 100px 0;
	gap: 80px;

	.info {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 20px;

		h1 {
			font-size: 40px;
			font-weight: 600;
		}

		p {
			color: var(--text-light);
			font-size: 18px;
			font-weight: 400;
		}
	}

	.grid {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		justify-content: center;
		align-items: center;
		align-content: center;
		gap: 60px 35px;
		width: 100%;

		.member {
			display: flex;
			flex-direction: column;
			justify-content: center;
			align-items: flex-start;
			min-height: 100px;
			padding: 50px 35px 40px 35px;
			gap: 15px;
			position: relative;
			border-radius: 30px;
			background: var(--gradient);

			.icon {
				display: flex;
				flex-direction: column;
				justify-content: center;
				align-items: center;
				width: 80px;
				height: 80px;
				gap: 10px;
				position: absolute;
				left: 25px;
				top: -40px;
				border-radius: 100px;
				background: var(--color4);
			}

			h3 {
				font-size: 26px;
				font-weight: 600;
			}

			p {
				font-size: 16px;
				font-weight: 400;
			}
		}
	}
}

.legal {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: var(--devicemax);
	max-width: 1600px;
	padding: 100px 0 200px 0;
	gap: 80px;

	p {
		color: var(--text-light);
		font-size: 18px;
		font-weight: 400;
		line-height: 32px;
	}

	.info {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 20px;

		h1 {
			font-size: 40px;
			font-weight: 600;
		}
	}
}
