/*selects all elements in the document so I can give them all a property*/
*{
	color:#ffffff;
	margin: 0;
	padding: 0;
	text-decoration: none;
	list-style: none;
	box-sizing: border-box;
	font-family: 'Dosis', sans-serif;
	scroll-behavior: smooth;
	border: none;
	outline: none;
}

/*COLOR*/
/*Contains all the elements that I often use on the site, like color or fonts. With this I can 
easily adjust the entire website by adjusting the root*/
:root{
	--purple: #656194;
	--pink: #c095c3;
	--blue: #abc2e1;
	--darkblue: #39638d;
	--deepblue: #093550;

	--h1-font: 7rem;
	--h2-font: 3.5rem;
	--p-font: 1.1rem;
}

body{
	background: var(--blue)
}

header{
	background: var(--darkblue);
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 28px 11%;
	border-bottom: 1px solid transparent;
	transition: all ease .50s;
}

.logo img{
	width: 100%;
	height: auto;
}

/*NAVIGATION*/
.navlist{
	display: flex;
}

.navlist a{
	font-size: var(--p-font);
	font-weight: 600;
	margin: 0 40px;
	transition: all ease .40s;
}

.navlist a:hover{
	color: var(--pink);
	text-decoration: underline;
}

#menu-icon{
	font-size: 42px;
	color:#ffffff;
	z-index: 10001;
	cursor: pointer;
	display: none;
}

/*HERO*/
section{
	padding: 120px 19% 100px;
}

.hero-text h1{
	color: var(--purple);
	font-size: 2rem;
	font-weight: 900;
	margin-bottom: 15px;
	word-spacing: 10px;
}

.hero-text h2{
	font-family: 'Dosis', sans-serif;
	font-size: 5rem;
	font-weight: 800;
	margin-bottom: 20px;
	letter-spacing: 2px;
}

.hero-text h3{
	font-size: 2rem;
	font-weight: 600;
	margin-bottom: 3.5rem;
}

.about{
	display: inline-block;
	padding: 16px 45px;
	color: var(--purple);
	background: var(--pink);
	font-size: var(--p-font);
	font-weight: 800;
	transition: all ease .50s;
	border-radius: 15px;
}

.about:hover{
	font-weight: 800;
	background: var(--purple);
	color: var(--pink);
	transform: translateX(5px);
}

/*WORK*/
.work{
	background: var(--darkblue);
	padding: 50px 45px;
}

.text-center{
	text-align: center;
}

.text-center h2{
	font-family:'Dosis', sans-serif;
	font-size: var(--h2-font);
	font-weight: 800;
	margin-bottom: 10px;
}

.text-center h4{
	font-size: 22px;
	font-weight: 500;
}	

/* The repeat function in grid repeats a fragment of the tracklist, allowing a large number of 
columns or rows that exhibit a recurring pattern to be written in a more compact form*/
/* Auto-fit are keywords that repeat the set of tracks as many times as is needed to fill the
grid container*/
.work-item{
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, auto));
	align-items:center;
	gap: 2.2rem;
	text-align: center;
	margin-top: 4rem;
}

.work i{
	font-size: 50px;
	color: var(--deepblue);
	margin-bottom: 10px;
}

.work-box{
	padding: 45px 30px;
	background: var(--blue);
	border-radius: 0.8rem;
	border: 1px solid transparent;
	cursor: pointer;
	transition: all ease .50s;
	margin-bottom: 1rem;
}

.work h3{
	font-size: 2rem;
	font-weight: 700;
	margin-bottom: 12px;
}

.work p{
	font-size: var(--p-font);
	font-weight: 600;
	line-height: 30px;
	margin-bottom: 1.5rem;
	color: var(--purple);
}

.more{
	display: inline-block;
	padding: 9px 24px;
	background: var(--deepblue);
	font-size: var(--p-font);
	font-weight: 500;
	border-radius: 1rem;
	transition: all ease .50s;
}

.more:hover{
	background: var(--darkblue);
	color: white;
}

.work-box:hover{
	transform: translateY(-5px);
}

/*CONTACT*/
.contact{
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, auto));
	align-items:center;
	gap: 5rem;
}

.left-contact{
	display: flex;
	align-items: center;
	text-align: center;
	gap: 4rem;
}

.icon i{
	color: var(--deepblue);
	opacity: 0.5;
	font-size: 120px;
	transition: all ease .40s;
}

.icon i:hover{
	opacity: 1;
	cursor: pointer;
}

.icon h1{
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 1px;
}

.right-contact h2{
	font-family:'Dosis', sans-serif;
	font-size: var(--h2-font);
	color: var(--deepblue);
	font-weight: 800;
	margin-bottom: 20px;
}

.right-contact a{
	display: inline-block;
	color: #ffffff;
	font-size: 2rem;
	font-weight: 600;
	letter-spacing: 2px;
	border-bottom: 2px solid var(--pink);
	padding: 3px 0;
	transition: all ease 0.40s;
}

.right-contact a:hover{
	transform: translateY(-5px);
	color: var(--purple);
	border-bottom: 2px solid var(--purple);
}

/*FOOTER*/
.footer{
	padding: 40px 19% 40px;
	background: var(--purple);
	display: flex;
	align-items: center;
	flex-direction: column;
	text-align: center;
}

.footer p{
	color: #ffffff;
	font-size: 3rem;
	line-height: 30px;
	margin-bottom: 30px;
}

.footer i{
	height: 40px;
	width: 40px;
	background: var(--darkblue);
	color: #ffffff;
	border: 2px solid var(--blue);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	border-radius: 50%;
	margin: 0 9px;
	margin-bottom: 20px;
	transition: all ease 0.50s;
}

.footer i:hover{
	transform: translateY(-5px);
	background: transparent;
	border: 2px solid var(--pink)
}



/*UP BUTTON*/
.sbutton{
	position: fixed;
	right: 2.2rem;
	bottom: 2.2rem;
	background: var(--pink);
	font-size: 23px;
	padding: 9px;
	border-radius: 0.8rem;
}

/*RESPONSIVE*/
/* Media query is designed for all different kind of devices. When you put in the max-with its the
same as if statement (arduino). When the width screen falls below 1600px then this screen will
appear*/
@media (max-width: 1600px){
	header{
		padding: 14px 4%;
	}
	
	section{
		padding:100px 5% 80px;
	}
}

@media (max-width: 1200px){
	.home{
		min-height: 90vh;
	}

	.navlist a{
		margin: 0 20px;
	}

	:root{
		--h1-font: 5rem;
		--h2-font: 3.1rem;
		--p-font: 1rem;
	}
}

@media (max-width: 1060px){
	.work-item{
		grid-template-columns: repeat(auto-fit, minmax(350px,auto));
	}

	.contact{
		grid-template-columns: 1fr;
	}

	.left-contact{
		margin: auto;
	}
}

@media (max-width: 660px){
	.home{
		min-height: 80vh;
	}

	:root{
		--h1-font: 3.8rem;
		--h2-font: 2.7rem;
		--p-font: 15px;
	}

	.hero-text h4{
		font-size: 18px;
		word-spacing: 10px;
		margin-bottom: 30px;
	}

	.about{
		padding: 10px 35px;
	}

	.left-contact{
		gap: 3rem;
	}

	.icon i{
		font-size: 80px;
	}

	.in h4{
		font-size: 20px;
	}
}

@media (max-width: 460px){
	:root{
		--h1-font: 3.8rem;
		--h2-font: 2.7rem;
	}

	.hero-texth4{
		font-size: 16px;
		word-spacing: 7px;
	}
}