:root{--bg-primary:#0f172a;--bg-secondary:#1e293b;--text-primary:#f8fafc;--text-secondary:#94a3b8;--accent-primary:#38bdf8;--accent-secondary:#818cf8;--accent-gradient:linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));--glass-bg:#1e293bb3;--glass-border:#ffffff1a;--glass-shadow:0 8px 32px 0 #0000005e;--font-main:"Inter", system-ui, -apple-system, sans-serif;--font-display:"Outfit", sans-serif;--spacing-xs:.5rem;--spacing-sm:1rem;--spacing-md:2rem;--spacing-lg:4rem;--spacing-xl:8rem;--transition-fast:.2s ease;--transition-medium:.3s ease-in-out}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-main);background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--text-primary);font-weight:700;line-height:1.2}a{color:inherit;transition:color var(--transition-fast);text-decoration:none}ul{list-style:none}img{max-width:100%;display:block}.container{max-width:1200px;padding:0 var(--spacing-sm);margin:0 auto}.gradient-text{background:var(--accent-gradient);color:#0000;-webkit-background-clip:text;background-clip:text}.glass-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:1rem}.header{z-index:1000;width:100%;padding:var(--spacing-sm) 0;transition:var(--transition-medium);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172acc;position:fixed;top:0;left:0}.header.scrolled{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.nav{justify-content:space-between;align-items:center;display:flex}.logo{font-family:var(--font-display);color:var(--text-primary);font-size:1.5rem;font-weight:700}.nav-links{gap:var(--spacing-md);display:flex}.nav-link{opacity:.8;font-weight:500;position:relative}.nav-link:hover{opacity:1;color:var(--accent-primary)}.nav-link:after{content:"";background:var(--accent-gradient);width:0;height:2px;transition:var(--transition-fast);position:absolute;bottom:-4px;left:0}.nav-link:hover:after{width:100%}.hero{min-height:100vh;padding-top:var(--spacing-xl);align-items:center;display:flex;position:relative;overflow:hidden}.hero:before{content:"";background:var(--accent-secondary);filter:blur(120px);opacity:.2;z-index:-1;border-radius:50%;width:300px;height:300px;position:absolute;top:20%;right:10%}.hero:after{content:"";background:var(--accent-primary);filter:blur(120px);opacity:.15;z-index:-1;border-radius:50%;width:400px;height:400px;position:absolute;bottom:20%;left:10%}.hero-content{max-width:800px}.hero-title{margin-bottom:var(--spacing-md);font-size:4.5rem;line-height:1.1}.hero-subtitle{color:var(--text-secondary);margin-bottom:var(--spacing-lg);max-width:600px;font-size:1.5rem}.btn-group{gap:var(--spacing-sm);display:flex}.btn{transition:var(--transition-medium);cursor:pointer;border-radius:50px;padding:.8rem 2rem;font-weight:600;display:inline-block}.btn-primary{background:var(--accent-gradient);color:#fff;border:none;box-shadow:0 4px 15px #38bdf84d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #38bdf880}.btn-secondary{color:var(--text-primary);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:0 0}.btn-secondary:hover{border-color:var(--text-secondary);background:#ffffff0d}.scroll-indicator{opacity:.5;animation:2s infinite bounce;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.about-content{align-items:center;gap:var(--spacing-lg);flex-wrap:wrap;display:flex}.about-image-wrapper{flex:1;min-width:300px}.about-image{width:100%;box-shadow:var(--glass-shadow);transition:transform var(--transition-medium);border-radius:1rem}.about-image:hover{transform:scale(1.02)}.about-text{flex:1;min-width:300px;padding:2rem}.about-text p{color:var(--text-primary);margin-bottom:1rem;font-size:1.1rem}@media screen and (width<=768px){.about-content{flex-direction:column}}.section{padding:var(--spacing-xl) 0}.section-title{margin-bottom:var(--spacing-md);text-align:center;font-size:2.5rem}.timeline{max-width:1200px;padding:var(--spacing-md) 0;margin:0 auto;position:relative}.timeline:after{content:"";background:var(--glass-border);width:2px;margin-left:-1px;position:absolute;top:0;bottom:0;left:50%}.timeline-item{background-color:inherit;box-sizing:border-box;width:50%;padding:10px 40px;position:relative}.timeline-item:after{content:"";background-color:var(--bg-primary);border:2px solid var(--accent-primary);z-index:1;border-radius:50%;width:16px;height:16px;position:absolute;top:24px;right:-8px}.left{left:0}.right{left:50%}.right:after{left:-8px}.timeline-content{border-radius:6px;padding:20px 30px;position:relative}.timeline-date{color:var(--accent-primary);margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.timeline-role{margin-bottom:.25rem;font-size:1.25rem}.timeline-company{color:var(--text-secondary);margin-bottom:1rem;font-size:1rem}.timeline-desc{color:var(--text-secondary);font-size:.95rem;line-height:1.6}@media screen and (width<=600px){.timeline:after{left:31px}.timeline-item{width:100%;padding-left:70px;padding-right:25px}.timeline-item:after{left:23px}.right{left:0%}.hero-title{font-size:3rem}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translate(-50%)}40%{transform:translate(-50%,-10px)}60%{transform:translate(-50%,-5px)}}.fade-in{animation:.8s ease-out forwards fadeIn}.timeline-logo-card{align-items:flex-start;gap:1.5rem;display:flex}.timeline-logo-wrapper{border:1px solid var(--glass-border);background:#ffffff1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:80px;height:80px;padding:12px;display:flex}.timeline-logo{object-fit:contain;max-width:100%;max-height:100%}.timeline-logo-details{flex:1}@media screen and (width<=600px){.timeline-logo-card{flex-direction:column;align-items:flex-start;gap:1rem}.timeline-logo-wrapper{width:60px;height:60px}}.modal{z-index:2000;-webkit-backdrop-filter:blur(5px);background-color:#0009;width:100%;height:100%;display:none;position:fixed;top:0;left:0;overflow:auto}.modal-content{width:90%;max-width:900px;max-height:85vh;margin:5% auto;padding:2rem;position:relative;overflow-y:auto}.close-modal{color:var(--text-secondary);cursor:pointer;transition:color var(--transition-fast), transform var(--transition-fast);z-index:10;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;margin:0;padding:0;font-size:2.5rem;font-weight:300;line-height:1;display:flex;position:absolute;top:1rem;right:1.5rem}.close-modal:hover,.close-modal:focus{color:var(--accent-primary);background:#ffffff0d;outline:none;transform:rotate(90deg)}.table-container{overflow-x:auto}#grades-table{border-collapse:collapse;width:100%;color:var(--text-primary);margin-top:1rem}#grades-table th,#grades-table td{text-align:left;border-bottom:1px solid var(--glass-border);padding:1rem}#grades-table th{color:var(--accent-primary);background-color:#ffffff0d;position:sticky;top:0}.term-header{color:var(--accent-secondary);font-size:1.1rem;font-weight:700;text-align:center!important;background-color:#5eead41a!important;padding:1.2rem!important}#grades-table tr:hover{background-color:#ffffff05}@media screen and (width<=600px){.modal-content{margin:10% auto;padding:1.5rem}#grades-table th,#grades-table td{padding:.75rem .5rem;font-size:.9rem}}.mobile-menu-btn{cursor:pointer;z-index:1001;display:none}.bar{background-color:var(--text-primary);width:25px;height:3px;margin:5px 0;transition:all .4s}@media screen and (width<=768px){.mobile-menu-btn{display:block}.nav-links{background-color:var(--glass-bg);-webkit-backdrop-filter:blur(15px);z-index:1000;border-left:1px solid var(--glass-border);flex-direction:column;justify-content:center;align-items:center;width:100%;height:100vh;transition:right .5s ease-in-out;display:flex;position:fixed;top:0;right:-100%}.nav-links.nav-active{right:0}.nav-links li{opacity:0;margin:1.5rem 0}.nav-links.nav-active li{opacity:1;transition:opacity .5s ease-in-out .2s}.nav-link{font-size:1.5rem}.mobile-menu-btn.toggle .bar:first-child{transform:rotate(-45deg)translate(-5px,6px)}.mobile-menu-btn.toggle .bar:nth-child(2){opacity:0}.mobile-menu-btn.toggle .bar:nth-child(3){transform:rotate(45deg)translate(-5px,-6px)}}
