/* This css is for the general layout */

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

html {
	scroll-behavior:smooth;
}

body {
	width: 100%;
	min-height: 100vh;
	background-color: #282828;
	color: #ebdbb2;
	font-family: 'Courier new', Courier, monospace;
}

/* This css is for Transitions */

a {
	transition: all 300ms ease;
}

/* This css is for Navigation on Desktop Devices*/

nav,
.nav-links {
	display: flex;
}

nav {
	margin-left: 3.125rem;
	margin-right: 3.125rem;
	justify-content: space-between;
	align-items: center;
	height: 14vh;
	border-bottom: 2px solid #ebdbb2;
}

.nav-links{
	gap: 2rem;
	list-style: none;
	font-size: 2rem;
}

a {
	text-decoration: none;
	text-decoration-color: white;
}

a:hover {
	color: #f9f5d7;
	text-decoration-color: #f9f5d7;
	text-decoration: underline;
	text-underline-offset: 1rem;
}

#desktop-logo {
	margin-top: 5px;
}

#desktop-logo:hover {
	cursor: default;
}

.index {
	color: #ebdbb2;
}

.project {
	color: #fabd2f;
}

.contact {
	color: #83a598;
}

.videoDemo {
	color: #d3869b;
}

.sitereport {
	color: #8ec07c;
}

/* This css is for hamburger menu */

#hamburger-nav {
	display: none;
}

.hamburger-menu {
	position: relative;
	display: inline-block;
}

.hamburger-icon {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 24px;
	width: 30px;
}

.hamburger-icon span {
	width: 100%;
	height: 2px;
	background-color: #ebdbb2;
}

.menu-links {
	position: absolute;
	top: 100%;
	right: 0;
	background-color: #282828;
	width: fit-content;
	max-height: 0;
	overflow: hidden;	
}

.menu-links a {
	display: block;
	padding:10px;
	text-align: center;
	font-size: 1.2rem;
	text-decoration: none;
}

.menu-links li {
	list-style: none;
}

.menu-links.open {
	max-height: 300px;
	border: 2px inset #ebdbb2;
}

.hamburger-icon.open span:first-child {
	transform: rotate(45deg) translate(10px, 5px);
}

.hamburger-icon.open span:nth-child(2) {
	opacity: 0;
}

.hamburger-icon.open span:last-child {
	transform: rotate(-45deg) translate(10px, -6px);
}

.hamburger-icon span:first-child {
	transform: none;
}

/* This css is for sections */

section {
	padding-top: 4vh;
	height: 100vh;
	margin: 0 10rem;
	/* min-height: fit-content; */
	display: flex;
}

/* This css is for profile section */

 #profile {
	justify-content: center;
	gap: 5rem;
	height: 80vh;
}

 .section-pic {
	display: flex;
	height: 400px;
	width: 400px;
	margin: auto 0;
	border: 5px dashed #ebdbb2;
	border-radius: 50%;
	padding: 5px;
}

.section-text {
	align-self: center;
	text-align: center;
	align-items: center;
	display: flex;
	flex-direction: column;
}

.section-text p {
	font-weight: 600;
}

.section-text-1 {
	font-size: 1.75rem;
	margin-bottom: 1rem;
}

.section-text-2 {
	font-size: 1.75rem;
	margin-top: 1rem;
}

.title {
	font-size: 3rem;
	text-align: center;
}

#socials {
	display: flex;
	justify-content: center;
	margin-top: 1rem;
	gap: 1rem;	
}

.icon {
	cursor: pointer;
	height: 3rem;
}

/* This  is for about me section on the homepage */

#about {
	padding: 60px;
	font-weight: 600;
	font-size: 2rem;
}

.content {
    margin: 0 auto;
    text-align: center;
}

.about-heading {
    margin-bottom: 20px;
}

.about-paragraph-1 {
    text-align: left;
	font-size: 1.5rem;
	font-weight: 400;
}

.about-paragraph-2 {
	margin-top: 1rem;
    text-align: left;
	font-size: 1.5rem;
	font-weight: 400;
}

.about-paragraph-3 {
	margin-top: 1rem;
    text-align: left;
	font-size: 1.5rem;
	font-weight: 400;
}

.about-paragraph-4 {
	margin-top: 1rem;
    text-align: left;
	font-size: 1.5rem;
	font-weight: 400;
}

/* This css is for project */
.grid-container {
    display: grid;
    grid-template-columns: 18.75rem 18.75rem 18.75rem;
    grid-template-rows: 18.75rem 18.75rem;
    column-gap: 10rem;
	row-gap: 30rem;
	margin-top: 10rem;
	cursor: pointer;
	justify-content: center;
    align-items: center;
	margin-bottom: 35rem;
	margin-left: 3.125rem;
	margin-right: 3.125rem;
}

.grid-item img {
    width: 100%;
    height: auto;
}

.grid-item {
	text-align: center;
	font-size: 2rem;
	color: #fabd2f;
	padding: 10px;
	font-weight: bold;
	border: 5px outset #fabd2f;
	border-radius: 10px;
}

.grid-item p {
	padding-top: 30px;
	padding-bottom: 30px;
}

.empty {
	border: 0px;
}
/* This css is for Contact */

#contact {
    display: flex;
    flex-direction: column;
    align-items: center;
	color: #83a598;
	text-align: center;
	margin-bottom: 10rem;
}

#contact h1 {
    font-size: 2.5rem;
	margin-top: 1rem;
    margin-bottom: 1rem;
}

#contact-info {
	margin: 0 10px;
	display: flex;
	gap: 3rem;
	margin-bottom: 1rem;
}

#name {
	text-align: center;

}

#email {
	text-align: center;
}

#message {
	text-align: center;
}

.c-icon {
	height: 2rem;
}

/* This css is for form */

form {
	margin-top: 1rem;
    width: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.form-group {
    width: 100%;
    margin-bottom: 2rem;
}

.form-group input,
.form-group textarea {
    width: 100%;
    padding: 1rem;
    border: 3px solid #83a598;
    border-radius: 5px;
    background-color: #f9f5d7;
    color: #83a598;
	font-size: 1.5rem;
	font-weight: bold;
}

button {
    padding: 1rem 3rem;
    border: 3px solid #83a598;
    border-radius: 10px;
    background-color: #282828;
    color: #83a598;
    font-size: 1.5rem;
    cursor: pointer;
    transition: background-color 500ms ease;
}

button:hover {
    background-color: #83a598;
	color: #282828;
}

.desktop-footer-1 {
	text-align: center;
	padding-bottom: 1rem;
	color: #ebdbb2;
}

.desktop-footer-2 {
	text-align: center;
	padding-bottom: 1rem;
	color: #fabd2f;
}

.desktop-footer-3 {
	text-align: center;
	padding-bottom: 1rem;
	color: #83a598;
}

.desktop-footer-4 {
	text-align: center;
	padding-bottom: 1rem;
	color: #d3869b;
}

.desktop-footer-5 {
	text-align: center;
	padding-bottom: 1rem;
	color: #8ec07c;
}

/* This css is for sitereport */

#sitereport {
	display: flex;
	flex-direction: column;
	text-align: left;
	color: #8ec07c;
	margin-bottom: 10rem;
	margin-left: 10rem;
    margin-right: 10rem;
	height: auto;
}

.site-heading {
	font-size: 2rem;
	margin-bottom: 1rem;
	color: #689d6a;
	font-weight: bold;
}

.site-content{
    line-height: 1.5;
	font-size: 1.5rem;
	font-weight: bold;
	margin-bottom: 5rem;
}

.site-link {
	color: #b8bb26;
	font-weight: bold;
}

.site-link:hover {
	color: #ebdbb2;
	text-underline-offset: 0.5rem;
}

.site-image {
	border: 5px solid #000000;
	max-width: 100%;
}

/* This CSS is for videoDemo */

#video-demo {
	margin-left: 10rem;
	margin-right: 10rem;
	display: flex;
	flex-direction: column;
    align-items: center;
}

.video-heading {
	text-align: center;
	font-size: 2rem;
	margin-bottom: 5rem;
	color: #d3869b;
	font-weight: bold;
}

/* This css is for Mediaqueries */

@media screen and (max-width:500px) {
	#desktop-nav {
		display:none;
	}

	nav {
		margin-left: 1rem;
		margin-right: 1rem;
	}

	#hamburger-nav {
		display:flex;
		height: 100px;
		border-bottom: 2px solid #ebdbb2;
	}

    #profile {
        flex-direction: column;
        padding-top: 5rem;
        height: auto;
		align-items: center;
		margin-left: 3.125rem;
    	margin-right: 3.125rem;
		margin-bottom: 2rem;
    }

	.section-pic {
		height: 20rem;
		width: 20rem;
	}

    .section-text-1, .section-text-2 {
        font-size: 1.25rem;
    }
 
	.title {
		font-size: 2rem;
	}

	#about {
		align-items: center;
		margin: 0 50px;
		padding: 0px;
	}

	.about-heading {
		font-size: 2rem;
	}

	.about-list {
		padding-left: 1rem;
	}

	.about-paragraph-1, .about-paragraph-2, .about-paragraph-3, .about-paragraph-4 {
		font-size: 1.25rem;
	}

	.grid-container {
		grid-template-columns: 17rem;
		grid-template-rows: 15rem 15rem 15rem 15rem 15rem 15rem;
		column-gap: 5rem;
		row-gap: 10rem;
		margin-top: 5rem;
		height: 115rem;
		cursor: none;
	}

	#contact{
		margin: 0 50px;
		margin-bottom: 10rem;
	}

	#contact h1 {
		margin-top: 1rem;
		font-size: 2rem;
	}

	.form-group {
		width: 20rem;
	}

	.mobile-footer-1 {
		text-align: center;
		padding-bottom: 1rem;
		font-size: 0.8rem;
		color: #ebdbb2;
	}

	.mobile-footer-2 {
		text-align: center;
		padding-bottom: 1rem;
		font-size: 0.8rem;
		color: #fabd2f;
	}

	.mobile-footer-3 {
		text-align: center;
		padding-bottom: 1rem;
		font-size: 0.8rem;
		color: #83a598;
	}

	.mobile-footer-4 {
		text-align: center;
		padding-bottom: 1rem;
		font-size: 0.8rem;
		color: #d3869b;
	}

	.mobile-footer-5 {
		text-align: center;
		padding-bottom: 1rem;
		font-size: 0.8rem;
		color: #8ec07c;
	}

	#sitereport{
		margin-left: 1rem;
		margin-right: 1rem;
		margin-bottom: 1rem;
	}

	.site-content {
		font-size: 1.25rem;
	}

	#video-demo {
		margin-left: 1rem;
		margin-right: 1rem;
	}

	.video-container {
		position: relative;
		height: 60vh;
		width: 100%;
		overflow: hidden;
		padding-top: 56.25%;
	}
	
	.video-container iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		border: 0;
	}

}