body{
	font-family: 'Open Sans', sans-serif;
	width: 1440px;
	margin: auto;
	cursor: default;
	background-color: white;
	margin: auto;
}

.mobilebtn{
	display: none;
	border-style: none;
	background-color: transparent;
	margin: auto 5% auto 0;
}

header{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: stretch;
	background-color: hsl(0, 0%, 100%);
	z-index: 2;
	position: relative;
}

.logo{
	margin: 2% 0 2% 12%;
}

.desktopbtn{
	margin: auto 12% auto 0;	
	border-style: none;
	background-image: linear-gradient(90deg, rgba(49,211,92,1) 0%, rgba(43,183,218,1) 100%);
	transition-duration: 0.4s;
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	color: white;
	font-size: 15px;
	width: 170px;
	height: 45px;
	border-radius: 50px;
	cursor: pointer;
}

.desktopbtn:hover, .s1 button:hover, footer button:hover{
	opacity: 0.5;
}

#desktopnav{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: stretch;
	width: 30%;
}

#desktopnav a{
	margin-left: 2%;
	margin-right: 2%;
	padding-top: 7%;
	color: hsl(233, 8%, 62%);
	cursor: pointer;
	transition-duration: 0.1s;
	font-weight: 400;
}

#desktopnav a:hover{
	color: hsl(233, 26%, 24%);
	border-bottom: solid 5px;
	border-image: linear-gradient(90deg, rgba(49,211,92,1) 0%, rgba(43,183,218,1) 100%) 1;
}

#mobilenav{
	display: none;
	flex-direction: column;
	align-items: center;
	
	position: fixed;
	top: 15%;
	left: 5%;
	width: 90%;
	height: 200px;
	z-index: 1;
	padding: 5% 0;

	background-color: hsl(0, 0%, 100%);
	border-radius: 5px;
	box-shadow: 0px 30px 30px 60px rgba(0,0,0,0.1);
}

#mobilenav a{
	margin: 3% 0;
	color: hsl(233, 26%, 24%);
}

main{
	display: flex;
	flex-direction: column;
	position: relative;
	overflow: hidden;
}

.s1{
	display: grid;
	grid-template-columns: 30% 65%;
	gap: 2% 5%;
	padding-left: 12%;
	background-color: hsl(0, 0%, 98%);
	margin-bottom: 0;
}

.s1 h1{
	order: 1;
	font-size: 50px;
	font-weight: 300;
	margin-top: 40%;
	margin-bottom: 0;
	color: hsl(233, 26%, 24%);
}

.s1 div{
	order: 2;
	grid-row: span 4;
	background-image: url("images/bg-intro-desktop.svg");
	background-repeat: no-repeat;
	background-position: 0 60%;
	height: 650px;
}

.s1 div img{
	margin-left: 27%;
	margin-top: -10%;
	position: absolute;
	left: 28%;
}

.s1 p{
	order: 3;
	color: hsl(233, 8%, 62%);
	line-height: 25px;
	padding-right: 5%;
}

.s1 button{
	order: 4;
	border-style: none;
	background-image: linear-gradient(90deg, rgba(49,211,92,1) 0%, rgba(43,183,218,1) 100%);
	transition-duration: 0.4s;
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	color: white;
	font-size: 15px;
	width: 170px;
	height: 45px;
	border-radius: 50px;
	cursor: pointer;
}

.s2{
	background-color: hsl(220, 16%, 96%);
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	padding: 3% 12% 7% 12%;
	gap: 4% 2%;
}

.s2 h2{
	grid-column: span 4;
	font-size: 35px;
	font-weight: 300;
	color: hsl(233, 26%, 24%);
	margin-bottom: 0;
}

.s2 p{
	color: hsl(233, 8%, 62%);
	margin-top: 0;
	margin-bottom: 3%;
	line-height: 25px;
}

.s2mainp{
	grid-column: span 4;
	padding-right: 50%;
}

.s2 h3{
	font-weight: 300;
}

.s3{
	background-color: hsl(0, 0%, 98%);
	padding: 5% 12% 7% 12%;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 5% 3%;
}

.s3 h2{
	grid-column: span 4;
	font-size: 35px;
	font-weight: 300;
	color: hsl(233, 26%, 24%);
	margin-bottom: 0;
}

.s3 div{
	background-color: hsl(0, 0%, 100%);
	padding-bottom: 8%;
	border-radius: 5px;
}

.s3 div img{
	object-fit: cover;
	width: 100%;
	height: 50%;
	border-radius: 5px 5px 0 0;
}

.s3 div h4{
	font-size: 10px;
	font-weight: 400;
	color: hsl(233, 8%, 62%);
	margin: 10% 9% 5% 9%;
}

.s3 div h3{
	margin: 5% 9%;
	font-weight: 300;
	transition-duration: 0.4s;
	cursor: pointer;
	font-size: 17px;
}

.s3 div h3:hover{
	color: hsl(136, 65%, 51%);
}

.s3 div p{
	margin: 5% 9%;
	color: hsl(233, 8%, 62%);
	font-size: 13px;
	line-height: 20px;
}

footer{
	background-color: hsl(233, 26%, 24%);
	padding: 3% 12%;
	color: hsl(0, 0%, 100%);
	display: grid;
	grid-template-columns: 1fr 2fr 1fr;
}

.links{
	grid-row: span 2;
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	height: 100%;
}

.links a{
	height: 33.33%;
	transition-duration: 0.4s;
	cursor: pointer;
}

.links a:hover{
	color: hsl(136, 65%, 51%);
}

footer button{
	border-style: none;
	background-image: linear-gradient(90deg, rgba(49,211,92,1) 0%, rgba(43,183,218,1) 100%);
	transition-duration: 0.4s;
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	color: white;
	font-size: 15px;
	width: 170px;
	height: 45px;
	border-radius: 50px;
	cursor: pointer;
	justify-self: end;
}

footer p{
	justify-self: end;
	align-self: end;
	color: hsl(233, 8%, 62%);
}

.social{
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	width: 60%;
	cursor: pointer;
}

.social img{
	transition-duration: 0.4s;
}

.social img:hover{
	filter: brightness(0) saturate(100%) invert(64%) sepia(73%) saturate(461%) hue-rotate(82deg) brightness(93%) contrast(92%);
}

@media (max-width: 375px){
	body{
		width: 375px;
	}
	
	header{
		position: fixed;
		width: 100%;
	}
	
	.logo{
		margin: 3% 0 3% 5%;
	}
	
	#desktopnav{
		display: none;
	}
	
	.desktopbtn{
		display: none;
	}
	
	.mobilebtn{
		display: block;
	}
	
	.s1{
		display: flex;
		flex-direction: column;
		align-items: center;
		text-align: center;
		padding: 0 2%;
	}
	
	.s1 div{
		order: 1;
		background-image: url("images/bg-intro-mobile.svg");
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center top;
		height: 320px;
		width: 130%;
	}
	
	.s1 div img{
		width: 90%;
		margin-left: 5%;
		margin-top: -36%;
		left: 0;
	}
	
	.s1 h1{
		order: 2;
		margin-top: 0;
		font-size: 40px;
	}
	
	.s1 p{
		order: 3;
		text-align: center;
		font-size: 15px;
	}
	
	.s1 button{
		order: 4;
		margin-top: 5%;
		margin-bottom: 25%;
	}
	
	.s2{
		display: flex;
		flex-direction: column;
		align-items: center;
		text-align: center;
		padding: 10% 5% 15% 5%;
	}
	
	.s2 h2{
		font-size: 30px;
		padding: 0 5% 5% 5%;
	}
	
	.s2mainp{
		padding: 0 2% 10% 2%;
	}
	
	.s2 div{
		margin-top: 5%;
	}
	
	.s3{
		display: flex;
		flex-direction: column;
		padding: 10% 5% 15% 5%;
	}
	
	.s3 h2{
		text-align: center;
		font-size: 30px;
		padding-bottom: 10%;
	}
	
	.s3 div{
		margin-bottom: 5%;
	}
	
	footer{
		display: flex;
		flex-direction: column;
		text-align: center;
		align-items: center;
		padding: 10% 0 15% 0;
	}
	
	footer img{
		order: 1;
	}
	
	.social{
		order: 2;
		margin-top: 5%;
		width: 45%;
	}
	
	.links{
		order: 3;
		margin-top: 5%;
		margin-bottom: 5%;
	}
	
	.links a{
		margin: 5% 0;
		font-size: 15px;
	}
	
	footer button{
		order: 4;
	}
	
	footer p{
		order: 5;
		justify-self: center;
		align-self: center;		
	}
}