*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;color:#2d3748;background:#fff;overflow-x:hidden;position:relative}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#f7fafc,#edf2f7,#e2e8f0,#cbd5e0,#a0aec0);z-index:-2;animation:subtleShift 10s ease-in-out infinite alternate;opacity:.3}body:after{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 30% 20%,rgba(45,55,72,.05) 0%,transparent 50%),radial-gradient(circle at 70% 80%,rgba(74,85,104,.03) 0%,transparent 50%);z-index:-1;animation:subtleFlow 15s ease-in-out infinite}.app{min-height:100vh;position:relative}.hero{height:100vh;display:flex;align-items:center;justify-content:center;position:relative;background:transparent;color:#2d3748;overflow:hidden;opacity:0;transform:translateY(30px);transition:all 1.2s cubic-bezier(.16,1,.3,1)}.hero.visible{opacity:1;transform:translateY(0)}.hero-content{text-align:center;z-index:2;max-width:800px;padding:0 2rem}.hero-title{font-size:clamp(2rem,6vw,4.5rem);font-weight:700;margin-bottom:1rem;opacity:0;animation:fadeInUp 1s ease-out .5s forwards;background:linear-gradient(135deg,#1a202c,#2d3748,#4a5568,#718096,#2d3748);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:fadeInUp 1s ease-out .5s forwards,gradientText 4s ease-in-out infinite}.highlight{background:linear-gradient(45deg,#2d3748,#4a5568,#718096);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradientText 3s ease-in-out infinite}.hero-subtitle{font-size:1.5rem;margin-bottom:3rem;opacity:0;animation:fadeInUp 1s ease-out .8s forwards;color:#718096}.floating-element{position:absolute;top:20%;right:10%;z-index:1}.geometric-shape{width:200px;height:200px;background:linear-gradient(45deg,#2d37481a,#71809626);border-radius:30% 70% 70% 30%/30% 30% 70% 70%;animation:float 6s ease-in-out infinite;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(45,55,72,.1)}.floating-particles{position:absolute;width:100%;height:100%;overflow:hidden;pointer-events:none;z-index:0}.particle{position:absolute;width:4px;height:4px;background:#2d37484d;border-radius:50%;animation:floatParticle 8s ease-in-out infinite}.particle-1{left:10%;animation-delay:0s}.particle-2{left:20%;animation-delay:1s}.particle-3{left:30%;animation-delay:2s}.particle-4{left:40%;animation-delay:3s}.particle-5{left:50%;animation-delay:4s}.particle-6{left:60%;animation-delay:5s}.particle-7{left:70%;animation-delay:6s}.particle-8{left:80%;animation-delay:7s}.particle-9{left:15%;animation-delay:1.5s}.particle-10{left:25%;animation-delay:2.5s}.particle-11{left:35%;animation-delay:3.5s}.particle-12{left:85%;animation-delay:.5s}.scroll-indicator{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);text-align:center;animation:bounceUpDown 2s ease-in-out infinite;z-index:2;color:#4a5568}.scroll-arrow{display:flex;flex-direction:column;align-items:center;margin-bottom:.5rem}.scroll-arrow span{display:block;width:1px;height:20px;background:#4a5568;margin:2px 0;animation:scrollFlow 2s ease-in-out infinite}.scroll-arrow span:nth-child(2){animation-delay:.2s}.scroll-arrow span:nth-child(3){animation-delay:.4s}.scroll-indicator p{font-size:.9rem;color:#718096;font-weight:500}section{padding:5rem 0;position:relative}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.about{background:#f7fafccc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:30px;margin:0 2rem;border:1px solid rgba(203,213,224,.3)}.section-header{text-align:center;margin-bottom:3rem}.section-header.reveal{animation:slideUpReveal 1s ease-out forwards}.section-header h2{font-size:3rem;margin-bottom:1rem;background:linear-gradient(135deg,#2d3748,#4a5568);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section-header p{color:#718096}.about-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:3rem}.about-card{padding:3rem 2rem;background:#fffc;border-radius:20px;text-align:center;transition:all .4s cubic-bezier(.16,1,.3,1);border:1px solid rgba(203,213,224,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #2d37481a}.about-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px #2d374826;border-color:#a0aec0;background:#fffffff2}.card-icon{font-size:3rem;margin-bottom:1.5rem;filter:drop-shadow(0 2px 8px rgba(45,55,72,.2));transition:all .3s ease}.uni-logo{width:110px;height:110px;object-fit:contain;transition:all .3s cubic-bezier(.16,1,.3,1);filter:drop-shadow(0 2px 8px rgba(45,55,72,.15))}.uni-logo:hover{transform:scale(1.1);filter:drop-shadow(0 4px 16px rgba(45,55,72,.2)) drop-shadow(0 8px 24px rgba(45,55,72,.1))}.about-card:hover .uni-logo{transform:scale(1.1) rotate(5deg);filter:drop-shadow(0 6px 20px rgba(45,55,72,.25)) drop-shadow(0 12px 30px rgba(45,55,72,.15))}.about-card h3{font-size:1.5rem;margin-bottom:1rem;color:#2d3748}.about-card p{color:#718096}.projects{background:#edf2f799;border-radius:30px;margin:0 2rem;border:1px solid rgba(203,213,224,.3)}.projects h2{text-align:center;font-size:3rem;margin-bottom:3rem;background:linear-gradient(135deg,#2d3748,#4a5568);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:3rem}.project-card{background:#ffffffe6;border-radius:20px;overflow:hidden;transition:all .4s cubic-bezier(.16,1,.3,1);box-shadow:0 8px 24px #2d37481f;border:1px solid rgba(203,213,224,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.project-card:hover{transform:translateY(-15px);box-shadow:0 24px 48px #2d374833;border-color:#a0aec0}.project-image{height:250px;background:linear-gradient(135deg,#4a5568,#718096);position:relative}.project-content{padding:2rem}.project-content h3{font-size:1.5rem;margin-bottom:1rem;color:#2d3748}.project-content p{color:#718096}.project-tech{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1.5rem}.project-tech span{padding:.3rem 1rem;background:linear-gradient(135deg,#2d3748,#4a5568);color:#fff;border-radius:20px;font-size:.8rem;font-weight:500;box-shadow:0 2px 8px #2d374833}.contact{background:#f7fafccc;color:#2d3748;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:30px;margin:0 2rem;border:1px solid rgba(203,213,224,.3)}.contact h2{font-size:3rem;margin-bottom:1rem;background:linear-gradient(135deg,#2d3748,#4a5568);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.contact p{font-size:1.2rem;margin-bottom:2rem;color:#718096}.contact-button{padding:1rem 3rem;background:linear-gradient(135deg,#2d3748,#4a5568);color:#fff;border:none;border-radius:50px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 16px #2d374833}.contact-button:hover{transform:translateY(-3px);box-shadow:0 8px 24px #2d37484d;background:linear-gradient(135deg,#1a202c,#2d3748)}.navbar{position:fixed;top:0;width:100%;background:#ffffffe6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:1000;padding:.5rem 0;transition:all .3s ease;border-radius:0 0 40px 40px;border-bottom:1px solid rgba(203,213,224,.3)}.nav-container{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:0 2rem}.nav-logo{font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,#2d3748,#4a5568);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nav-links{display:flex;gap:2rem}.nav-links a{color:#4a5568;text-decoration:none;font-weight:500;transition:all .3s ease;position:relative}.nav-links a:hover{color:#2d3748}.nav-links a:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background:linear-gradient(135deg,#2d3748,#4a5568);transition:width .3s ease}.nav-links a:hover:after{width:100%}.experience{background:#edf2f799;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:30px;margin:0 2rem;border:1px solid rgba(203,213,224,.3)}.timeline{position:relative;max-width:800px;margin:0 auto}.timeline:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:linear-gradient(135deg,#2d3748,#4a5568);transform:translate(-50%)}.timeline-item{position:relative;margin-bottom:3rem;width:50%}.timeline-item:nth-child(odd){left:0;padding-right:3rem}.timeline-item:nth-child(2n){left:50%;padding-left:3rem}.timeline-dot{position:absolute;width:20px;height:20px;background:linear-gradient(135deg,#2d3748,#4a5568);border-radius:50%;top:0;box-shadow:0 2px 8px #2d37484d}.timeline-item:nth-child(odd) .timeline-dot{right:-10px}.timeline-item:nth-child(2n) .timeline-dot{left:-10px}.timeline-content{background:#fffc;border-radius:15px;padding:2rem;border:1px solid rgba(203,213,224,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;box-shadow:0 4px 12px #2d37481a}.timeline-content:hover{transform:translateY(-5px);box-shadow:0 12px 24px #2d374826;border-color:#a0aec0}.timeline-date{color:#4a5568;font-weight:600;font-size:.9rem;margin-bottom:.5rem}.timeline-content h3{color:#2d3748;margin-bottom:.5rem;font-size:1.3rem}.timeline-content h4{color:#718096;margin-bottom:1rem;font-size:1.1rem;font-weight:500}.timeline-content p{color:#718096;margin-bottom:1rem;line-height:1.6}.skills-tags{display:flex;flex-wrap:wrap;gap:.5rem}.skills-tags span{padding:.3rem .8rem;background:linear-gradient(135deg,#2d3748,#4a5568);color:#fff;border-radius:15px;font-size:.8rem;font-weight:500}.timeline-item{opacity:1;transform:translate(0) rotate(0) scale(1);transition:all 1.2s cubic-bezier(.16,1,.3,1)}.timeline-item.slide-from-left:not(.visible){opacity:0;transform:translate(-100px) rotate(-5deg) scale(.8)}.timeline-item.slide-from-right:not(.visible){opacity:0;transform:translate(100px) rotate(5deg) scale(.8)}.timeline-item.slide-from-bottom:not(.visible){opacity:0;transform:translateY(150px) rotateX(45deg) scale(.6)}.timeline-item.slide-from-scale:not(.visible){opacity:0;transform:scale(.2) rotate(180deg)}.timeline-item.visible .timeline-dot{animation:dotPulse 2s ease-in-out infinite}@keyframes dotPulse{0%,to{transform:scale(1);box-shadow:0 2px 8px #2d37484d}50%{transform:scale(1.2);box-shadow:0 4px 16px #2d374880}}.timeline-item.visible .timeline-content{animation:contentSlideUp .8s ease-out .3s both}@keyframes contentSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.timeline-item.visible .skills-tags span{animation:tagSlideIn .6s ease-out both}.timeline-item.visible .skills-tags span:nth-child(1){animation-delay:.8s}.timeline-item.visible .skills-tags span:nth-child(2){animation-delay:.9s}.timeline-item.visible .skills-tags span:nth-child(3){animation-delay:1s}.timeline-item.visible .skills-tags span:nth-child(4){animation-delay:1.1s}@keyframes tagSlideIn{0%{opacity:0;transform:translateY(20px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}.project-links{display:flex;gap:1rem;margin-top:1rem}.project-link{padding:.5rem 1rem;background:#2d37481a;color:#2d3748;text-decoration:none;border-radius:20px;font-size:.9rem;font-weight:500;border:1px solid #2d3748;transition:all .3s ease}.project-link:hover{background:#2d3748;color:#fff;transform:translateY(-2px)}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}.contact-info{display:flex;flex-direction:column;gap:2rem}.contact-item{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:#fffc;border-radius:15px;border:1px solid rgba(203,213,224,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;box-shadow:0 4px 12px #2d37481a}.contact-item:hover{transform:translateY(-5px);border-color:#a0aec0;box-shadow:0 12px 24px #2d374826}.contact-icon{font-size:2rem;filter:drop-shadow(0 2px 8px rgba(45,55,72,.2))}.contact-item h4{color:#2d3748;margin-bottom:.5rem}.contact-item p{color:#718096}.contact-form{background:#fffc;padding:2rem;border-radius:20px;border:1px solid rgba(203,213,224,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #2d37481a}.form-group{margin-bottom:1.5rem}.form-group input,.form-group textarea{width:100%;padding:1rem;background:#ffffffe6;border:1px solid rgba(203,213,224,.5);border-radius:10px;color:#2d3748;font-size:1rem;transition:all .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#4a5568;box-shadow:0 0 16px #2d37481a}.form-group input::placeholder,.form-group textarea::placeholder{color:#a0aec0}.footer{background:#edf2f7cc;padding:2rem 0;text-align:center;border-top:1px solid rgba(203,213,224,.3);border-radius:30px 30px 0 0;margin:0 2rem;color:#718096}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(180deg)}}@keyframes bounceUpDown{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-10px)}}@keyframes scrollFlow{0%{opacity:0;transform:translateY(-10px)}50%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(10px)}}@keyframes floatParticle{0%{transform:translateY(100vh) rotate(0);opacity:0}10%{opacity:.3}90%{opacity:.3}to{transform:translateY(-100px) rotate(360deg);opacity:0}}@keyframes slideUpReveal{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}@keyframes subtleShift{0%{background:linear-gradient(135deg,#f7fafc,#edf2f7,#e2e8f0,#cbd5e0,#a0aec0)}50%{background:linear-gradient(135deg,#edf2f7,#e2e8f0,#cbd5e0,#a0aec0,#718096)}to{background:linear-gradient(135deg,#f7fafc,#edf2f7,#e2e8f0,#cbd5e0,#a0aec0)}}@keyframes subtleFlow{0%{transform:translate(0) rotate(0)}to{transform:translate(-10px,-10px) rotate(360deg)}}@keyframes gradientText{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@media (max-width: 768px){.projects-grid,.about-grid{grid-template-columns:1fr}.about,.projects,.contact,.experience,.footer{margin:0 1rem;border-radius:20px}body:before{border-radius:15px;margin:5px;width:calc(100% - 10px);height:calc(100% - 10px)}.hero{margin:0 .5rem;border-radius:15px}.floating-particles{display:none}.scroll-indicator{bottom:1rem;font-size:.8rem}.scroll-arrow span{height:15px}.geometric-shape{width:150px;height:150px}.floating-element{top:15%;right:5%}}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#cbd5e04d}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#2d3748,#4a5568);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#1a202c,#2d3748)}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}
