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

/***********************************************Variable styles****************************************************************/
:root{
	--primary: #1e3a5f;      /*Navy Blue*/
	--secondary: #4a90e2;	 /*Light Blue*/
	--accent: #2ecc71;		 /*Success Green*/
	--text: #2c3e50;		 /*Dark Gray*/
	--text-light: #7f8c8d;	 /*Lighter Gray*/
	--background: #f8f9fa;	 /*Light Gray*/
	--white: #ffffff;		 /*White*/
	--shadow: rgba(0, 0, 0, 0.1);
}

/***********************************************Navigation Styling*************************************************************/
nav{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1rem 2rem;
	position: sticky;
	background-color: var(--primary);
	top: 0;
	z-index: 1000;
	box-shadow: 0 2px 10px var(--shadow);
}

nav a{
	color: var(--white);
	text-decoration: none;
	padding: 0.5rem 1rem;
	transition: color 0.3s ease;
}

nav a:hover{
	color: var(--accent);
}

/***********************************************HERO Styling******************************************************************/
.cta-button{
	display: inline-block;
	color: var(--white);
	text-decoration: none;
	background-color: var(--accent);
	transition: transform 0.5s ease, box-shadow 0.3s ease;
	margin-top: 2rem;
	padding: 1rem 2rem;
	border-radius: 5px;
	font-weight: bold;
	animation: fadeIn 2s ease;

}

.cta-button:hover{
	transform: scale(1.05);
	box-shadow: 0 5px 20px rgba(0,0,0,0.3);
}

.hero{
	min-height: 40vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-image: linear-gradient(to right, var(--primary), var(--secondary));
	color: var(--white);
}

.hero h1{
	color: var(--white);
	animation: fadeIn 2s ease;
}

.hero p{
	animation: fadeIn 2s ease;
}

/***********************************************Introduction Section Styling***************************************************/

#introductions{
	display: grid;
	grid-template-columns: 1fr 2fr;
	gap:3rem;
	align-items: center;
	padding: 4rem 2rem;
	max-width: 1200px;
	margin: 0 auto;
}

.profile-pic{
	border: solid 1px var(--primary);
	border-radius: 50%;
	box-shadow: 0 10px 30px rgba(0,0,0,0.2);
	max-width: 500px;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.profile-pic:hover{
	transform: scale(1.05);
	box-shadow: 0 15px 40px rgba(0,0,0,0.3);
}
/****************Skill Cards********************/

.intro-content ul{
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 2rem;
	list-style: none;
	padding: 0;
}

.intro-content li{
	background: var(--white);
	padding: 2rem;
	border-radius: 8px;
	box-shadow: 0 4px 15px var(--shadow);
	min-height: 150px;
	display: flex;
	align-items: center;
	text-align: center;
	justify-content: center;
	transition: transform 0.3s, box-shadow0.3s ease;
}

.intro-content li:hover{
	transform: translateY(-5px);
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

/***********************************************Main Styling (Basic)***********************************************************/
body{
	background-color: var(--background);
	font-size: 16px;
	line-height: 1.6;
	font-family: 'Segoe UI', 'Roboto', sans-serif;
	color: var(--text);
}

section:nth-child(odd){
	background-color: var(--white);
}

section:nth-child(even){
	background-color: var(--background);
}

h1{
	color: var(--primary);
	font-size: 2.5rem;
	line-height: 1.2;
}

h2{
	color: var(--secondary);
	font-size: 2rem;
	line-height: 1.3;
}

h3{
	color: var(--text);
	font-size: 1.5rem;
	line-height: 1.4;
}

h1, h2, h3{
	margin-bottom: 1rem;
}

#schedule, #accomplishment, #contact{
	padding: 4rem 2rem;
	max-width: 1200px;
	margin: 0 auto;
}

#schedule h2, #accomplishment h2, #contact h2{
	text-align: center;
	margin-bottom: 2rem;
}

#contact p{
	text-align: center;
}

/***********************************************Schdule Table Styling**********************************************************/

table{
	margin: 2rem auto;
	max-width: 100%;
	border-collapse: collapse;
	background-color: var(--white);
	box-shadow: 0 4px 15px var(--shadow);
	border-radius: 10px;
	overflow: hidden;
}

table caption{
	color: var(--primary);
	margin-bottom: 1rem;
	font-weight: bold;
	font-size: 1.5rem;
	text-align: center;
	text-decoration: underline;
}

thead{
	background-color: var(--primary);
	color: var(--white);
}

th{
	padding: 1rem;
	text-align: left;
	font-weight: 600;
}

td{
	padding: 1rem;
	 text-align: left;
	 border-bottom: 1px solid #ddd;
}

tbody tr:hover{
	background-color: var(--background);
}

tbody tr:nth-child(even){
	background-color: #f9f9f9;
}

/***********************************************Contact Styling****************************************************************/

#contact{
	background-color: var(--primary);
}

#contact .cta-button{
	margin-top: 1rem;
	font-size: 1.1rem;
}

.contact-content h2{
	color: var(--white);
}

.contact-content p{
	font-size: 1.1rem;
	margin-bottom: 0.5rem;
}

.contact-content{
	color: var(--white);
}

/***********************************************Animations*********************************************************************/
@keyframes fadeIn{
	0%{
		opacity: 0;
		transform: translateY(30px);
	}
	
	100%{
		opacity: 1;
		transform: translateY(0);
	}
}
