@import url('https://fonts.googleapis.com/css2?family=Inter:wght@200;400;800&display=swap');

:root {
	--blue: #8eb8e5;
	--dark-blue: #2a6db5;
	--bg-blue: #0f355d;
  	--spotify-border: #1f2937;
  	--hover-scale: transform 80ms ease-in-out;
	--hover-blue: invert(40%) sepia(40%) saturate(353%) hue-rotate(170deg) brightness(94%) contrast(89%);
}

@keyframes gradient-text {
	0% {
		background-position: 0% 50%;
	}

	50% {
		background-position: 100% 50%;
	}

	100% {
		background-position: 0% 50%;
	}
}

@keyframes sound {
	0% {
		height: 3px;
	}

	100% {
		height: 10px;
	}
}
 
@keyframes fade-left {
    0% {
        opacity: 0;
        transform: translateX(-20px);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fade-up {
    0% {
        opacity: 0;
        transform: translateY(-20px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fade-down {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

body {
	background-color: black;
	color: white;
	font-family: 'Inter', sans-serif;
}

p {
	font-size: 2vh;
}

li {
	font-size: 2.2vh;
}

.container {
	display: flex;
	height: 90vh;
	padding-left: 15vh;
	padding-right: 15vh;
}

.left-section {
	animation: fade-left 2s ease-out;
	width: 45vh;
	display: flex;
	justify-content: center;
	align-items: center;
	flex: 1;
}

.profile h1 {
	font-weight: 800;
	font-size: 7vh;
	margin: 0;
	background: linear-gradient(to right, var(--blue), var(--dark-blue));
	background-size: 200% 200%;
	color: transparent;
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	animation: gradient-text 3s ease-in-out infinite;
}

.profile h2 {
	margin: 0;
	font-size: 3vh;
}

.contact {
	display: flex;
	align-items: center;
	line-height: 8px;
	text-decoration: none;
	color: inherit;
}

.contact img {
	width: 3vh;
	height: 3vh;
	margin-right: 10px;
}

.contact:hover {
	filter: var(--hover-blue);
	cursor: pointer;
	transform: scale(1.03);
	transition: var(--hover-scale)
}

.weather {
	display: flex;
	align-items: center;
	text-decoration: none;
	margin-top: 1vh;
}

.weather img {
	width: 4vh;
	height: 4vh;
	margin-right: 0px;
}

.spotify {
	display: flex;
	align-items: center;
	height: 8vh;
	width: 60%;
	border: 1px solid var(--spotify-border);
	border-radius: 7px;
	padding: 10px;
	max-width: 100%;
}

.spotify:hover {
	transform: scale(1.03);
	transition: var(--hover-scale);
}


.spotify img {
	width: 8vh;
	height: 8vh;
}

.songinfo {
	margin-left: 14px;
	font-size: 2vh;
}

.trackInfo {
	display: flex;
}

#bars {
	display: none;
	position: relative;
	width: 16px;
	margin-right: 7px;
}

.bar {
	background: white;
	bottom: 4px;
	position: absolute;
	width: 5px;
	animation: sound 0ms -700ms linear infinite alternate;
}

.bar:nth-child(1) {
	left: 1px;
	animation-duration: 575ms;
}

.bar:nth-child(2) {
	left: 7px;
	animation-duration: 535ms;
}

.bar:nth-child(3) {
	left: 13px;
	animation-duration: 500ms;
}

.artistInfo {
	display: flex;
	margin-top: 6px;
	align-items: center;
}

.artistInfo img {
	width: 1.5vh;
	height: 1.5vh;
	margin-right: 7px;
}

.right-section {
	animation: fade-up 2.5s ease;
	width: 45vh;
	display: flex;
	justify-content: center;
	align-items: center;
	flex: 1;
	text-align: right;
}

.scroll-box {
	margin: 35px;
	height: 70vh;
	overflow-y: scroll;
	scrollbar-width: thin;
	scrollbar-color: var(--dark-blue) var(--blue);
	padding-right: 15px;
}

.scroll-box::-webkit-scrollbar {
	width: 13px;
}

.scroll-box::-webkit-scrollbar-thumb {
	background-color: var(--dark-blue);
	border: 3px solid var(--blue);
	border-radius: 7px;
}

.scroll-box::-webkit-scrollbar-track {
	background: var(--bg-blue);
	border-radius: 7px;
}

.scroll-box h1 {
	margin: 0;
}

.resume a {
	text-decoration: none;
}

.resume ul {
	list-style: none;
	padding-left: 0;
}

.resume ul li {
	position: relative;
	padding-right: 20px;
	margin-bottom: 2vh;
	text-align: right;
	text-decoration: none;
	color: white;
	vertical-align: middle;
	display: inline-block;
}

.resume ul li:hover {
	filter: var(--hover-blue);
	transform: scale(1.03);
	transition: var(--hover-scale)
}

.resume ul li:before {
	content: "";
	position: absolute;
	right: 5px;
	top: 0;
	bottom: 0;
	width: 2px;
	background-color: white;
}

.resume small img {
	height: 2vh;
	width: 2vh;
	vertical-align: middle;
}

.resume img {
	height: 3vh;
	width: 3vh;
	vertical-align: middle;
	margin-left: 15px;
}

.footer {
	animation: fade-down 2.5s ease-in;
	text-align: center;
	
}

.footer a {
	color: var(--blue);
}

@media screen and (max-width: 920px) {
	::-webkit-scrollbar {
		width: 13px;
		background-color: var(--bg-blue);
	}

	::-webkit-scrollbar-thumb {
		background-color: var(--dark-blue);
		border: 3px solid var(--blue);
		border-radius: 7px;
	}

	::-webkit-scrollbar-track {
		background-color: var(--bg-blue);
		border-radius: 7px;
	}

	.container {
		flex-direction: column;
		height: auto;
		padding: 15px;
	}


	.left-section,
	.right-section {
		justify-content: center;
		width: 100%;
		text-align: center;
	}

	.contact-section {
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		height: 100%;
	}

	.contact {
		text-align: center;
		margin: 0 auto;
	}


	.weather {
		justify-content: center;
		margin-bottom: 1vh;
	}

	.spotify {
		width: 60%;
		margin: 0 auto;
		margin-bottom: 1vh;
	}

	.songinfo {
		flex-direction: column;
		align-items: center;
	}


	.scroll-box {
		height: auto;
		margin: 15px 15px 0 15px;
		overflow-y: visible;
		scrollbar-width: none;
		padding-right: 0;
	}

	.scroll-box::-webkit-scrollbar {
		display: none;
	}

	.resume ul li {
		text-align: center;
		padding-right: 0;
		margin-bottom: 2vh;
	}

	.resume ul li:before {
		content: none;
	}

	.footer {
		margin-top: 0;
	}
}

@media screen and (max-width: 500px) {
	.artistInfo {
		align-items: center;
		justify-content: center;
	}
}