html {
	box-sizing: border-box;
}

*, *::before, *::after {
	box-sizing: inherit;
}

body {
	margin: 0;
	padding: 0;
	width: 100%;
}

body .background {
	background-image: linear-gradient(to right, darkgrey, lightgrey, rgb(235,235,235), rgb(235,235,235), rgb(235,235,235), rgb(235,235,235), rgb(235,235,235), rgb(235,235,235), rgb(235,235,235), rgb(235,235,235), rgb(235,235,235), rgb(235,235,235), rgb(235,235,235), rgb(235,235,235), rgb(235,235,235), rgb(235,235,235), rgb(235,235,235), rgb(235,235,235), rgb(235,235,235), rgb(235,235,235), rgb(235,235,235), lightgrey, darkgrey);
	width: 100%;
	height: 100%;
	max-width: 1920px;
	min-width: 600px;
}

li, p, a {
	font-family: Arial, source-sans-pro, sans-serif;
	font-size: clamp(.75rem, 1.4vw, 1.5rem);
	font-weight: bold;
	color: black;
}

h1 {
	color: black;
	text-align: center;
}

h2 {
	color: black;
	text-align: center;
}

.navmenu {
	width: 78%;
	position: sticky;
	top: 0;
	background-color: rgb(235,235,235);
	padding: 5px 50px 5px 50px; 
	margin: auto;
	z-index: 15;
	list-style-type: none;
}

.menu {
	display: flex;
	flex-wrap: wrap;	
	gap: 3px 20px;
}

.menu li {
	align-items: center;
	list-style-type: none;
}

.menu a {
	margin: auto;
	text-decoration: none;
	cursor: pointer;
	padding: 3px 10px;
}

.menu a:hover {
	padding: 3px 10px;
	background-color: rgb(165, 165, 165);
	color: white;
}


/* ------------------Education Block------------ */

.Education {
	width: 100%;
	height: 100%;
	align-items: center;
	background-color: transparent;
	padding: 5px 25px 5px 50px;
	margin: auto;
}

.Education h2 {
	text-align: left;
}

.degree ul li {
	font:arial;
	color: black;
	padding-top: 5px;
	padding-bottom: 5px;
}

.degree ul li b {
	font-size: clamp(.9rem, 1.6vw, 1.7rem);
}


/* ------------------Certifications Block------------ */

.Certifications {
	width: 100%;
	height: 250px;
	background-color: transparent;
	padding: 5px 25px 10px 50px;
	margin: auto;
}

.Certifications h2 {
	text-align: left;
}

.Certlist ul {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
/*	justify-content: space-around;  */
	align-items: stretch;
	height: 170px;
	padding: 0px 0px 0px 35px;
	gap: 8px 5px;   
	list-style: none;
}

.Certlist li {
	font: arial;
	font-size: 1rem;
	color: black;
	align-items: stretch;
  /*	padding: 2px 10px 3px;  */
	width: 25%;
/*	height: 15px; */
}


/* ------------------Professional Projects Block------------ */

.Professional {
	width: 100%;
	height: 100%;
	background-color: #333;
	padding: 10px 25px 20px 50px;
	margin: auto;
}

.Professional h2 {
	text-align: left;
	color: white;
}

.Project {
	display: inline-flex;
	min-height: 300px;
	background: #333;
	border-radius: 15px;
}

.container {
	position: relative;
	display: flex;
	padding: 10px 5px;
}

.card {
	position: relative;
	width: 450px;
	height: 225px;
	background: #333;
	transition: 0.5s;
}

.card:hover {
	height: 550px;
}

.card .lines {
	position: absolute;
	inset: 0;
	background: #333;
	overflow: hidden;
	border-radius: 15px;
}

.card .lines::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 800px;
	height: 90px;
	opacity: 0;
	background: linear-gradient(transparent, #e1e1e1, #f5f5f5, #e1e1e1, transparent);
	animation: animate 9s linear infinite;
	animation-play-state: paused;
}

.card:hover .lines::before {
	animation-play-state: running;
	opacity: 1;
}

@keyframes animate {
	0% {
		transform: translate(-50%, -50%) rotate(0deg);
	}
	100% {
		transform: translate(-50%, -50%) rotate(360deg);
		opacity: 0;
	}
}

.card .lines::after {
	content: '';
	position: absolute;
	inset: 4px;
	background: #333;
	border-radius: 15px;
}

.card .imgBox {
	position: absolute;
	top: 12px;
	left: 50%;
	width: 200px;
	height: 200px;
	transform: translateX(-50%);
	background: #333;
	transition: .5s;
	z-index: 10;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 15px;
}

.card:hover .imgBox {
	top: 10px;
	width: 430px;
	height: 300px;
}

.card .imgBox::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 800px;
	height: 90px;
	opacity: 0;
	transform: translate(-50%, -50%);
	background: linear-gradient(transparent, #e1e1e1, #f5f5f5, #e1e1e1, transparent);
	animation: animate2 8s linear infinite;
	animation-play-state: paused;
}

.card:hover .imgBox::before {
	animation-play-state: running;
	opacity: 1;
}

@keyframes animate2 {
	0% {
		transform: translate(-50%, -50%) rotate(0deg);
	}
	100% {
		transform: translate(-50%, -50%) rotate(360deg);
		opacity: 0;
	}
}

.card .imgBox::after {
	content: '';
	position: absolute;
	inset: 4px;
	background: #292929;
	border-radius: 15px;
}

.card .imgBox img {
	position: absolute;
	width: 430px;
	height: 300px;
	overflow: hidden;
	z-index: 5;
	opacity: 0.5;
	transition: 0.5s;
}

.card:hover .imgBox img {
	opacity: 1;
	inset: 4px;
	border-radius: 15px;
}

.card .content {
	position: absolute;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: flex-end;
	overflow: hidden;
}

.card .content .details {
	padding: 30px 20px;
	text-align: center;
	justify-content: center;
	width: 100%;
	transition: 0.5s;
	transform: translateY(325px);
}

.card:hover .content .details{
	transform: translateY(0px);
}

.card .content .details h2 {
	font-size: 1.5em;
	font-weight: 500;
	color: #45f3ff;
	line-height: 1.2em;
	text-align: center;
}

.card .content .details p {
	color: #fff;
	opacity: 0;
	transition: 0.5s;
}

.card:hover .content .details p,
.card:hover .content .details a {
	opacity: 1;
}

.card .content .details a {
	display: inline-block;
	padding: 8px 15px;
	background: #45f3ff;
	color: #292929;
	margin-top: 0px;
	font-weight: 500;
	text-decoration: none;
	opacity: 0;
	transition: 0.5s;
	border-radius: 10px;
	transform: translateY(-7px);
}


/* ------------------Personal Projects Block------------ */

.Personal {
	width: 100%;
	height: 150%;
	background-color: rgba(0, 20, 175, .3); 
	padding: 10px 25px 20px 50px;
	margin: auto;
}

.Personal h2 {
	text-align: left;
}


/* ------------------Achievements Block------------ */

.Achievements {
	width: 100%;
	height: 65%;
	background-color: rgba(35, 40, 20, .3);
	padding: 5px 25px 5px 50px;
	margin: auto;
}

.Achievements h2 {
	text-align: left;
}

.Achievements ul {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
/*	justify-content: space-around;  */
	align-items: stretch;
	height: 170px;
	padding: 0px 0px 0px 0px;
	gap: 8px 10px;   
	list-style: circle;
}

.Achievements li {
	font: arial;
	font-size: 1rem;
	color: black;
	align-items: stretch;
  /*	padding: 2px 10px 3px;  */
	width: 25%;
/*	height: 15px; */
}


/* -------------Work History Block--------------------*/

.Work {
	width: 100%;
	height: 100%;
	background-color: rgba(110, 80, 210, .3);
	padding: 5px 25px 5px 50px;
	margin: auto;
}

.Work h2 {
	text-align: left;
}


/* -------------Art Block--------------------*/

.Art {
	width: 100%;
	height: 100%;
	background-color: rgba(170, 170, 170, .3);
	padding: 5px 25px 5px 50px;
	margin: auto;
}

.Art h2 {
	text-align: left;
}


/* -------------Hobbies Block--------------------*/

.Hobbies {
	width: 100%;
	height: 100%;
	background-color: rgba(5, 15, 150, .3);
	padding: 5px 25px 5px 50px;
	margin: auto;
}

.Hobbies h2 {
	text-align: left;
}


/* -------------Contact Block--------------------*/

.Contact {
	width: 100%;
	height: 50%;
	background-color: rgba(250, 5, 90, .3);
	padding: 5px 25px 5px 50px;
	margin: auto;
}

.Contact h2 {
	text-align: left;
}


/* -------------Footer Block--------------------*/

.footer {
	width: 100%;
	height: 75%;
	background-color: rgba(5, 5, 5, .3);
	padding: 5px 25px 15px;
	margin: auto;
}

.footer p {
	color: white;
	text-align: center;
}