:root {
	--light: #EEE;
	--dark: #252625;
	--darker: #070807;
	--pink: #EC4899;
	--purple: #885CF6;
	--lightyellow: #fbf7e4;
	--yellow: #edc447;
	--darkyellow: #fdb714;
	--light2: #faf865;
	--olive: #423E37;
	--neutral: #8349e9;

	--large: min(4.2vmax,400%);
	--medium: min(2.5vmax,220%);
	--medium2: min(3vmax,220%);
	--small: min(2vmax,135%);
	--small2: min(2.5vmax,135%);
}

* {
	box-sizing: border-box;
	font-family: 'Spectral', 'Georgia', serif;
}

body {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 2% 10%;
	min-height: 100vh;
	height: 100%;
	width: 100%;
	overflow: visible;
}

.background {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: linear-gradient(to bottom, var(--purple), var(--pink));
	background-size: cover;
	z-index: -1; /* Place it behind the content */
}

.panel {
	display: flex;
	flex-direction: column;
	border-color: var(--darkyellow);
	border-style: solid;
	border-width: 0 0.6vmax;
	width: min(100%, 1000px);
	gap: 5%;
	padding: 7% 10%;
	background-color: var(--neutral);
	overflow-y: scroll;
}

.header {
	display: flex;
	text-align: center;
	align-items: center;
	flex-direction: column;
	margin: 0% 0% 5% 0%;
	gap: 0px;
}

.signature {
	padding: 0% 30%;
	margin: 0% 0% 0% 0%;
	width: auto;
	height: 8vmax;
}

.header h1 {
	max-width: 800 px;
	font-size: var(--large);
	width: 100%;
	margin: 2% 0%;
	text-shadow: var(--darker) 0.5px 1px 1px;

	color: var(--darkyellow);
}

.header h3 {
	margin: 3% 0% 0% 0%;
	max-width: 800 px;
	font-style: italic;
	text-align: justify;
	text-justify: inter-word;
	font-size: var(--medium);
	text-shadow: var(--dark) 0.5px 1px 1px;

	color: var(--yellow);
}

.header p {
	margin: 2% 0% 0% 0%;
	font-size: var(--small);
	color: var(--yellow);
	text-shadow: var(--dark) 0.2px 0.2px 0.1px;
}

.header .portrait {
	width: 15vmax;
	height: auto;
	border-radius: 100%;
	border: var(--yellow) 0.3vmax solid;
}

.socials {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	margin: 2% 0% 0% 0%;
	gap: 5%;
}

.socials .icon {
	width: 6vmax;
	height: auto;
}

.divider {
	margin: 0% 0% 0% 0%;
	width: 100%;
	height: 0.5vmax;
	background-color: var(--darkyellow);
}

.super-projects{
	display: flex;
	flex-direction: column;
	align-items: center;
	background-image: linear-gradient(to left, var(--neutral), var(--purple), var(--neutral));
	padding: 5% 10%;
}

.super-projects h2 {
	margin: 2% 0%;
	max-width: 800 px;
	font-size: var(--medium2);
	text-shadow: var(--darker) 0.5px 0.5px 1px;

	color: var(--darkyellow);
	/*text-shadow: 0.5px 1px 1px var(--olive);*/
}

.project-pane {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	margin: 2vmax 0vmax;
	width: 100%;
	gap: 4%;
}

.project-pane h2 {
	margin: 2% 0%;

	max-width: 800 px;
	font-size: var(--medium2);
	text-shadow: var(--darker) 0px 0px 0.4px;


	color: var(--purple);
	/*text-shadow: 0.5px 1px 1px var(--olive);*/
}

.project-pane p {
	font-size: var(--small2);
	color: var(--olive);
}

.project-pane a {
	margin-top: auto;
	font-size: var(--small2);
	color: var(--purple);
	text-shadow: var(--lightyellow) 0px 0px 20px;
}

.project {
	display: flex;
	flex-direction: column;
	flex: 1 1 calc(100% / 3 - 4%); /* Default: 3 columns */
	margin: 1.5vmin 0px;
	border-style: solid;
	border-color: var(--pink);
	border-width: 0 0.3vmax;
	background-image: linear-gradient(to top, var(--darkyellow), var(--yellow));
	padding: 5% 7%;
}

/* Media query for smaller screens */
@media (max-width: 768px) {
	.project {
	  flex: 1 1 calc(100% / 2 - 16px); /* 2 columns */
	}
}

#pink {
	color: var(--light2);
}