:root{--bg-dark: #0a0a12;--bg-section: #0d0d1a;--text-primary: #e8e4e0;--text-secondary: #9090a0;--accent-purple: #7c3aed;--accent-gold: #d4a853;--accent-glow: rgba(124, 58, 237, .3);--border-color: rgba(255, 255, 255, .1);--panel-bg: rgba(13, 13, 26, .7);--font-display: "Cinzel", serif;--font-body: "Crimson Text", serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}html,body{width:100%}body{font-family:var(--font-body);background-color:var(--bg-dark);color:var(--text-primary);overflow-x:hidden;overflow-y:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;min-height:100vh}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}@keyframes titleFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes underlineExpand{0%{width:0}to{width:min(300px,60vw)}}@keyframes subtitleFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}.hero{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-height:100vh;text-align:center;padding:2rem;background:url(/background.png) center center / cover no-repeat}.hero:before{content:"";position:absolute;inset:0;background:#0a0a12b3}.hero-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}.hero-photo{width:180px;height:180px;border-radius:50%;object-fit:cover;border:2px solid var(--accent-gold);box-shadow:0 0 30px #d4a85333;margin-bottom:1.5rem;animation:titleFadeIn 1.5s ease-out backwards}.hero-name{font-family:var(--font-display);font-size:clamp(3rem,10vw,6rem);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-primary);text-shadow:0 0 40px rgba(212,168,83,.3),0 0 80px rgba(212,168,83,.1);animation:titleFadeIn 1.5s ease-out backwards}.hero-underline{width:0;height:2px;margin-top:1rem;background:linear-gradient(90deg,transparent,var(--accent-gold),transparent);animation:underlineExpand 1s ease-out 1s forwards}.hero-title{font-family:var(--font-body);font-size:clamp(1.4rem,3.5vw,2.2rem);font-style:italic;font-weight:600;color:#fffffff2;letter-spacing:.1em;margin-top:1.2rem;animation:subtitleFadeIn 1.5s ease-out 1.5s backwards}.hero-stats{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem .8rem;margin-top:2rem;animation:subtitleFadeIn 1.5s ease-out 2s backwards}.stat{font-family:var(--font-body);font-size:clamp(.95rem,2vw,1.15rem);color:var(--accent-gold);font-weight:600;letter-spacing:.03em}.stat-dot{color:var(--text-secondary);font-size:1.2rem}.hero-links{display:flex;gap:1.5rem;margin-top:2rem;animation:subtitleFadeIn 1.5s ease-out 2.5s backwards}.hero-link{font-family:var(--font-body);font-size:1rem;color:var(--text-secondary);letter-spacing:.05em;padding:.4rem .8rem;border:1px solid var(--border-color);border-radius:4px;transition:color .3s,border-color .3s}.hero-link:hover{color:var(--accent-gold);border-color:var(--accent-gold)}.scroll-indicator{position:absolute;z-index:1;bottom:2rem;color:var(--text-secondary);animation:bounce 2s ease-in-out infinite;opacity:.6;transition:opacity .3s}.scroll-indicator:hover{opacity:1}@media(max-width:768px){.hero-name{letter-spacing:.05em}.hero-title{letter-spacing:.06em}.hero-links{gap:1rem}.stat-dot{display:none}.hero-stats{gap:.4rem 1rem}}@media(max-width:480px){.hero{padding:1.5rem}.hero-name{letter-spacing:.03em}.hero-links{flex-direction:column;gap:.6rem}}.journey{padding:6rem 2rem;background-color:var(--bg-section)}.section-title{font-family:var(--font-display);font-size:clamp(1.8rem,5vw,2.8rem);font-weight:600;text-align:center;letter-spacing:.08em;text-transform:uppercase;color:var(--text-primary);margin-bottom:4rem;text-shadow:0 0 30px rgba(124,58,237,.2)}.journey-timeline{display:flex;flex-direction:column;align-items:center;gap:3rem;max-width:1100px;margin:0 auto}.journey-card{width:100%;border-radius:12px;overflow:hidden;box-shadow:0 4px 30px #0006;border:1px solid var(--border-color);opacity:0;transform:translateY(30px);transition:opacity .6s ease-out,transform .6s ease-out,box-shadow .3s ease,border-color .3s ease}.journey-card.visible{opacity:1;transform:translateY(0)}.journey-card:hover{box-shadow:0 4px 40px #7c3aed40;border-color:#7c3aed66}.journey-image{display:block;width:100%;height:auto}@media(max-width:768px){.journey{padding:4rem 1rem}.journey-timeline{gap:2rem}}@media(max-width:480px){.journey{padding:3rem .75rem}.section-title{margin-bottom:2.5rem}.journey-card{border-radius:8px}}.projects{padding:6rem 2rem;background-color:var(--bg-dark)}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;max-width:900px;margin:0 auto}.project-card{display:block;background:#0d0d1acc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:12px;padding:2rem;opacity:0;transform:translateY(30px);transition:opacity .6s ease-out,transform .6s ease-out,border-color .3s ease,box-shadow .3s ease;cursor:default}a.project-card{cursor:pointer}.project-card.visible{opacity:1;transform:translateY(0)}.project-card:hover{border-color:var(--accent-gold);box-shadow:0 4px 30px #d4a85326;transform:translateY(-2px)}.project-card.visible:hover{transform:translateY(-2px)}.project-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.8rem}.project-name{font-family:var(--font-display);font-size:1.3rem;font-weight:600;letter-spacing:.04em;color:var(--text-primary)}.project-year{font-family:var(--font-body);font-size:.95rem;color:var(--text-secondary)}.project-metric{font-family:var(--font-body);font-size:1.4rem;font-weight:700;color:var(--accent-gold);margin-bottom:.6rem}.project-description{font-family:var(--font-body);font-size:1rem;color:var(--text-secondary);line-height:1.5}@media(max-width:768px){.projects-grid{grid-template-columns:1fr;max-width:500px}}@media(max-width:480px){.projects{padding:3rem 1rem}.project-card{padding:1.5rem}}.footer{padding:3rem 2rem 2rem;text-align:center;background-color:var(--bg-section)}.footer-divider{width:min(200px,40vw);height:1px;margin:0 auto 2rem;background:linear-gradient(90deg,transparent,var(--accent-gold),transparent)}.footer-links{display:flex;justify-content:center;gap:2rem;margin-bottom:1.5rem}.footer-links a{font-family:var(--font-body);font-size:.95rem;color:var(--text-secondary);letter-spacing:.03em;transition:color .3s}.footer-links a:hover{color:var(--accent-gold)}.footer-credit{font-family:var(--font-body);font-size:.85rem;color:var(--text-secondary);opacity:.6}@media(max-width:480px){.footer-links{flex-direction:column;gap:.8rem}}.thesis{min-height:100vh;background-color:var(--bg-dark);padding:60px 20px 100px}.thesis-container{max-width:680px;margin:0 auto}.thesis-back{display:inline-block;color:var(--text-secondary);font-family:var(--font-body);font-size:1rem;margin-bottom:48px;transition:color .2s}.thesis-back:hover{color:var(--text-primary)}.thesis-hero-image{width:100%;border-radius:8px;margin-bottom:32px}.thesis-title{font-family:var(--font-display);font-size:2.4rem;font-weight:600;color:var(--text-primary);line-height:1.2;margin-bottom:16px}.thesis-subtitle{font-family:var(--font-body);font-size:1.2rem;color:var(--text-secondary);font-style:italic;line-height:1.5;margin-bottom:12px}.thesis-author{font-family:var(--font-body);font-size:1rem;color:var(--text-secondary);margin-bottom:8px}.thesis-author a{color:var(--accent-gold);transition:opacity .2s}.thesis-author a:hover{opacity:.8}.thesis-divider{width:100%;height:1px;background:var(--border-color);margin:40px 0}.thesis-section{margin-bottom:40px}.thesis-section h2{font-family:var(--font-display);font-size:1.5rem;font-weight:500;color:var(--text-primary);margin-bottom:20px}.thesis-section p{font-family:var(--font-body);font-size:1.15rem;line-height:1.75;color:var(--text-primary);margin-bottom:16px}.thesis-section strong{color:var(--text-primary)}.thesis-section ul,.thesis-section ol{margin:16px 0;padding-left:24px}.thesis-section li{font-family:var(--font-body);font-size:1.15rem;line-height:1.75;color:var(--text-primary);margin-bottom:8px}.thesis-bio{font-family:var(--font-body);font-size:1.05rem;line-height:1.7;color:var(--text-secondary)}@media(max-width:768px){.thesis{padding:40px 16px 80px}.thesis-title{font-size:1.8rem}.thesis-subtitle{font-size:1.05rem}.thesis-section h2{font-size:1.3rem}.thesis-section p,.thesis-section li{font-size:1.05rem}}
