@import url('https://fonts.googleapis.com/css2?family=Asap:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&display=swap');

:root {
	--light: #F0F4F4;
	--dark: #121616;
	--accent1: #72CFCF;
	--accent2: #BA2525;
	--sec: #222B2F;
	--tshadow: 4px 4px 0 var(--accent1), 8px 8px 0 var(--accent2);
	scroll-behavior: smooth;
}

html {
	font-family: "Asap", serif;
	color: var(--light);
	background-color: var(--dark);
}

body {
	margin: 0;
}

::selection {
	background: var(--accent2);
	color: var(--light);
}

/* Navigation */

nav {
	position: fixed;
	top: 0;
	background-color: var(--dark);
	width: 100%;
	text-align: center;
	padding: 1.5rem 0px;
	box-shadow: 0 0 10vw 0 #000;
	z-index: 100;
}

nav a {
	color: var(--light);
	text-decoration: none;
	text-transform: uppercase;
	font-weight:700;
	letter-spacing: 3px;
	padding: 10px 25px;
	margin: auto 25px;
	border: 2px solid rgba(0,0,0,0);
	border-radius: 25px;
	transition: all 250ms;
}

nav a:hover {
	border: 2px solid var(--light);
	border-radius: 0;
	transform: translate(0px 5px);
	box-shadow: 0 0 25px 0 #777;
	letter-spacing: 0.5rem;
	padding-left: 2em;
}

nav a:active {
	filter: brightness(0.8);
}

/* Welcome */

#welcome-section {
	height: 100vh;
	width: 100%;
	margin: auto;
	text-align: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	box-shadow: 0 0 10vw 0 #000 inset;
}

#welcome-section h1 {
	font-size: 5rem;
	margin-bottom: 1rem;
	text-shadow: 4px 4px 0 var(--accent1), 8px 8px 0 var(--accent2);
}

#welcome-section h1:hover {
	
}

#subtitle {
	
}

#subtitle h3:nth-child(1) {
	opacity: 1;
	font-size: 2rem;
}

#subtitle h3:nth-child(2) {
	opacity: 0.6;
	font-size: 1.66rem;
}

#subtitle h3:nth-child(3) {
	opacity: 0.3;
	font-size: 1.33rem;
}

#subtitle h3:nth-child(4) {
	opacity: 0.1;
	font-size: 1rem;
}

#subtitle h3:nth-child(5) {
	opacity: 0.05;
	font-size: 0.66rem;
}

#welcome-section svg {
	position: absolute;
	bottom: 75px;
	fill: var(--light);
	transform: scale(2) translate(-6px);
	transition: transform 500ms, filter 500ms;
}

#welcome-section svg:hover {
	filter: brightness(0.7);
	transform: scale(1.75) translate(-7px);
}

/* Projects */

#projects-section {
	width: 100%;
	margin: auto 0;
	background-color: var(--dark);
	color: var(--light);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	padding: 50px 0;
	box-shadow: 0 -10px 0 0 var(--accent2), 0 -20px 0 0 var(--accent1), 0 -30px 0 0 var(--light);
}

#projects-section h2 {
	font-size: 4rem;
	text-shadow: var(--tshadow);
}

#projects {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	margin: 25px;
}

.project-tile {
	border: 0px solid var(--dark);
	border-radius: 1em;
	padding: 1em 2em 3em 2em;
	margin: 30px;
	background-color: var(--light);
	color: var(--dark);
	box-shadow: 5px 5px 0 0 var(--accent1), 10px 10px 0 0 var(--accent2);
	transition: box-shadow 250ms;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.project-tile:hover {
		box-shadow: 15px 15px 0 0 var(--accent1), -20px 30px 0 0 var(--accent2);
}

.project-tile img {
	width: 90%;
	aspect-ratio: 4 / 3;
}

.project-tile h3 {
	text-transform: uppercase;
	font-size: 1.75rem;
	margin: 15px auto 0 auto;
}

.project-tile hr {
	opacity: 50%;
	border-width: 1px;
	width: 33%;
}

.project-tile p {
	
}

.project-tile a {
	text-transform: uppercase;
	padding: 15px 25px;
	margin-top: 15px;
	background-color: var(--accent2);
	color: var(--light);
	border-radius: 2em;
	text-decoration: none;
	font-weight: 500;
	letter-spacing: .1em;
	transition: all 250ms;
}

.project-tile a:hover {
	background-color: var(--accent1);
	transform: scale(1.05);
}

#profile-link {
	font-size: 3em;
	text-transform: lowercase;
	letter-spacing: .25em;
	font-weight: 700;
	text-decoration: none;
	color: var(--light);
	margin: 50px auto;
	transition: text-shadow 250ms;
}

#profile-link:hover {
	text-shadow: 6px 1px 0 var(--accent1), 12px 2px 0 var(--accent2)
}

/* Contact */

#contact-section {
	width: 100%;
	margin: auto;
	background-color: var(--dark);
	color: var(--light);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
}

#contact-section h2 {
	font-size: 4rem;
	text-shadow: var(--tshadow);
}

form {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

label {
	display: none;
}

#name-email {
	display: flex;
}

#contact-form > div {
	margin: 15px 0px;
	width: 100%;
}

.longInput {
	font-family: "Asap", serif;
	height: 150px;
	resize: none;
}

input, .longInput {
	width: 100%;
	margin: 0px 0px;
	padding: 15px 20px;
	box-sizing: border-box;
	font-size: 1.25em;
	border: none;
	border-radius: 10px;
	outline: none;
	color: var(--dark);
	background-color: var(--light);
	box-shadow: 3px 3px 0 0 var(--accent1), 6px 6px 0 0 var(--accent2);
	transition: all 250ms;
}

#name {
	margin-right: 25px;
}

input:hover, .longInput:hover {
	box-shadow: 5px 5px 0 0 var(--accent1), 10px 10px 0 0 var(--accent2);
}

input:focus, .longInput:focus {
	box-shadow: 6px 6px 0 0 var(--accent1), 12px 12px 0 0 var(--accent2);
	transform: scale(1.05);
	text-shadow: none;
}

input[type=submit] {
	width: auto;
	font-weight: 700;
	background-color: var(--accent2);
	color: var(--light);
	text-transform: lowercase;
	box-shadow: none;
}

input[type=submit]:hover {
	transform: scale(1.05);
	background-color: var(--accent1);
	box-shadow: 6px 6px 0 0 var(--accent2);
}

input::placeholder, .longInput::placeholder {
	color: #888;
}

/* svg */
#sep {
	width: 100%;
	height: 15rem;
	margin-top: 0;
}

#sep-1 {
	width: 100%;
	height: 15rem;
}

#p1, #p2, #p3 {
	stroke-width: 2px;
	fill: none;
}

#p1 {
	stroke: var(--light);
}

#p2 {
	stroke: var(--accent1);
	transform: translate(0px, 1px);
}

#p3 {
	stroke: var(--accent2);
	transform: translate(0px, 2px);
}

/* media queries */

@media (max-width: 1030px) {
	#projects {
		grid-template-columns: repeat(2, 1fr);
	}
}