:root{--bg-dark:#050505;--bg-elevated:#0d0d0f;--bg-card:#111114;--text-main:#fff;--text-soft:#d6d6d6;--text-muted:#a0a0a0;--text-dim:#727272;--blue-primary:#06f;--blue-soft:#0066ff24;--blue-border:#0066ff3d;--blue-glow:#0066ff61;--border:#ffffff12;--border-strong:#ffffff1f;--shadow-card:0 22px 60px #0000006b;--font-sans:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "SFMono-Regular", Consolas, monospace;color:var(--text-main);background:var(--bg-dark);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.6}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background:var(--bg-dark)}body{min-width:320px;min-height:100vh;font-family:var(--font-sans);background:linear-gradient(180deg, #0066ff17 0, #05050500 34rem), linear-gradient(90deg, #ffffff06 1px, transparent 1px), linear-gradient(180deg, #ffffff06 1px, transparent 1px), var(--bg-dark);color:var(--text-main);background-size:auto,4rem 4rem,4rem 4rem,auto;overflow-x:hidden}body::selection{background:var(--blue-primary);color:var(--text-main)}img{max-width:100%;display:block}a{color:inherit;text-decoration:none;transition:color .3s,border-color .3s,background .3s,transform .3s}button,input,textarea,select{font:inherit}ul{list-style:none}h1,h2,h3,h4{color:var(--text-main);letter-spacing:0;font-weight:700;line-height:1.12}p{color:var(--text-muted)}code,pre{font-family:var(--font-mono)}#app{min-height:100vh}.container{width:min(100% - 4rem,1200px);margin:0 auto}.reveal{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(1.875rem)}.reveal.is-visible{opacity:1;transform:translateY(0)}.navbar.nav-scrolled{border-bottom-color:var(--border-strong);background:#050505eb;box-shadow:0 10px 30px #0000003d}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=768px){.container{width:min(100% - 2rem,1200px)}}.navbar{z-index:1000;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);background:#050505c7;width:100%;transition:background .3s,border-color .3s,box-shadow .3s;position:fixed;top:0;left:0}.nav-content{justify-content:space-between;align-items:center;gap:2rem;width:min(100% - 4rem,1200px);min-height:5rem;margin:0 auto;display:flex}.logo,.footer-logo{color:var(--text-main);font-size:1.35rem;font-weight:800;line-height:1}.logo span,.footer-logo span{color:var(--blue-primary)}.nav-links{align-items:center;gap:2rem;display:flex}.nav-links a{color:var(--text-muted);font-size:.95rem;font-weight:500}.nav-links a:hover,.nav-links a.active{color:var(--blue-primary)}.footer{border-top:1px solid var(--border);background:#0808099e;margin-top:4rem;padding:2.75rem 0}.footer-content{justify-content:space-between;align-items:center;gap:2rem;display:flex}.socials{align-items:center;gap:.85rem;display:flex}.socials a{border:1px solid var(--border);width:2.55rem;height:2.55rem;color:var(--text-muted);background:#ffffff09;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.socials a:hover{color:var(--text-main);border-color:var(--blue-border);background:var(--blue-soft);transform:translateY(-2px)}.copyright{min-width:max-content;color:var(--text-dim);text-align:right;font-size:.9rem;line-height:1.4}.copyright span{display:block}.copyright span+span{margin-top:.25rem}@media (width<=820px){.nav-content{width:min(100% - 2rem,1200px);min-height:4.5rem}.nav-links{gap:1rem}.nav-links a{font-size:.86rem}}@media (width<=640px){.nav-content{justify-content:center}.nav-links{display:none}.footer-content{text-align:center;flex-direction:column}.copyright{text-align:center}}.home-page{padding-top:5rem}.section{padding:6.25rem 0;scroll-margin-top:5rem}.hero-section{grid-template-columns:minmax(0,1.1fr) minmax(20rem,.72fr);align-items:center;gap:4rem;min-height:calc(100vh - 5rem);padding-top:4rem;padding-bottom:4rem;scroll-margin-top:5rem;display:grid;position:relative}.eyebrow{color:var(--blue-primary);margin-bottom:1rem;font-size:.88rem;font-weight:700;display:inline-flex}.eyebrow.centered{text-align:center;justify-content:center;width:100%}.hero-title{margin-bottom:1.25rem;font-size:4.25rem}.hero-title span{color:var(--blue-primary)}.hero-subtitle{max-width:40rem;color:var(--text-muted);margin-bottom:2rem;font-size:1.2rem}.hero-cta{flex-wrap:wrap;gap:1rem;display:flex}.btn{border-radius:8px;justify-content:center;align-items:center;min-height:3.25rem;padding:.9rem 1.35rem;font-weight:700;display:inline-flex}.btn-primary{background:var(--blue-primary);color:var(--text-main);box-shadow:0 0 24px var(--blue-glow)}.btn-primary:hover{box-shadow:0 0 34px var(--blue-glow);transform:translateY(-2px)}.btn-secondary{border:1px solid var(--border-strong);color:var(--text-main);background:#ffffff09}.btn-secondary:hover{border-color:var(--blue-border);background:var(--blue-soft);transform:translateY(-2px)}.hero-visual{justify-content:center;align-items:center;min-height:27rem;display:flex;position:relative}.hero-photo-wrap{aspect-ratio:1;width:min(78%,22rem);position:relative}.hero-photo-glow{background:radial-gradient(circle, var(--blue-glow) 0%, #06f0 70%);filter:blur(30px);opacity:.55;border-radius:50%;position:absolute;inset:-3rem}.hero-photo-ring{border:1px dashed var(--blue-border);border-radius:50%;position:absolute;inset:-1.25rem}.hero-photo{object-fit:cover;border:3px solid var(--blue-border);width:100%;height:100%;box-shadow:var(--shadow-card), 0 0 0 1px #ffffff0a inset;border-radius:50%;position:relative}.about-grid{grid-template-columns:minmax(0,1fr) minmax(18rem,.85fr);align-items:center;gap:4rem;display:grid}.about-text h2,.section-title{margin-bottom:1.5rem;font-size:2.65rem}.about-text p{margin-bottom:1.15rem;font-size:1.08rem}.skills-container{flex-wrap:wrap;gap:.85rem;display:flex}.skills-container span{border:1px solid var(--blue-border);background:var(--blue-soft);color:#69a2ff;border-radius:999px;align-items:center;min-height:2.35rem;padding:.45rem .85rem;font-size:.93rem;font-weight:600;display:inline-flex}.section-title{text-align:center;background:linear-gradient(90deg, var(--text-main), var(--text-muted));color:#0000;-webkit-background-clip:text;background-clip:text}.knowledge-grid,.projects-grid,.principles-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;display:grid}.knowledge-card,.project-card,.principle-card{border:1px solid var(--border);background:var(--bg-card);border-radius:8px;min-height:100%;padding:1.75rem;transition:transform .35s,border-color .35s,box-shadow .35s;position:relative;overflow:hidden}.knowledge-card:before,.project-card:before,.principle-card:before{content:"";background:linear-gradient(90deg, var(--blue-primary), transparent);transform-origin:0;width:100%;height:3px;transition:transform .35s;position:absolute;top:0;left:0;transform:scaleX(0)}.knowledge-card:hover,.project-card:hover,.principle-card:hover{border-color:var(--blue-border);box-shadow:var(--shadow-card);transform:translateY(-.45rem)}.knowledge-card:hover:before,.project-card:hover:before,.principle-card:hover:before{transform:scaleX(1)}.card-icon{border:1px solid var(--blue-border);width:2.75rem;height:2.75rem;color:var(--blue-primary);background:var(--blue-soft);border-radius:8px;justify-content:center;align-items:center;margin-bottom:1.1rem;display:inline-flex}.knowledge-card h3,.project-card h3,.principle-card h3{margin-bottom:.85rem;font-size:1.3rem}.knowledge-card p,.project-card p,.principle-card p{font-size:.98rem}.tech-stack{flex-wrap:wrap;gap:.5rem;margin-top:1.35rem;display:flex}a.project-card-linked{color:inherit;cursor:pointer;text-decoration:none;display:block}.project-link-icon{color:var(--text-muted);font-size:.85rem;transition:color .3s,transform .3s;position:absolute;top:1.5rem;right:1.5rem}.project-card-linked:hover .project-link-icon{color:var(--blue-primary);transform:translate(2px,-2px)}.tech-stack span{color:var(--text-main);background:#222;border-radius:4px;padding:.25rem .55rem;font-size:.82rem;font-weight:600}.contact-intro{text-align:center;max-width:38rem;margin:0 auto 2.5rem;font-size:1.05rem}.contact-form{border:1px solid var(--border);background:var(--bg-card);border-radius:8px;flex-direction:column;gap:1.35rem;max-width:38rem;margin:0 auto;padding:2.25rem;display:flex}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.35rem;display:grid}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:var(--text-soft);font-size:.9rem;font-weight:600}.form-group input,.form-group textarea{border:1px solid var(--border-strong);color:var(--text-main);background:#ffffff09;border-radius:8px;padding:.8rem 1rem;font-size:.95rem;transition:border-color .3s,background .3s}.form-group textarea{resize:vertical;min-height:8.5rem}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-dim)}.form-group input:focus,.form-group textarea:focus{border-color:var(--blue-border);background:var(--blue-soft);outline:none}.form-submit{cursor:pointer;border:none;align-self:flex-start}.form-submit:disabled{opacity:.7;cursor:not-allowed}.form-status{min-height:1.2rem;font-size:.92rem}.form-status-success{color:#5fd08a}.form-status-error{color:#ff6b6b}.contact-alt{text-align:center;margin-top:1.75rem;font-size:.95rem}.contact-alt a{color:#69a2ff;font-weight:700}.contact-alt a:hover{color:var(--text-main)}.timeline{max-width:44rem;margin:0 auto;padding-left:2rem;position:relative}.timeline:before{content:"";background:var(--border-strong);width:1px;position:absolute;top:.5rem;bottom:.5rem;left:.3rem}.timeline-item{padding-bottom:2.25rem;position:relative}.timeline-item:last-child{padding-bottom:0}.timeline-marker{border:2px solid var(--blue-primary);background:var(--bg-dark);width:.65rem;height:.65rem;box-shadow:0 0 0 4px var(--blue-soft);border-radius:50%;position:absolute;top:.3rem;left:-2rem}.timeline-period{color:var(--blue-primary);text-transform:uppercase;letter-spacing:.03em;margin-bottom:.35rem;font-size:.85rem;font-weight:700}.timeline-content h3{margin-bottom:.35rem;font-size:1.2rem}.timeline-place{color:var(--text-muted);white-space:pre-line;font-size:.95rem}.skill-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-top:1.5rem;display:grid}.skill-group{border:1px solid var(--border);background:var(--bg-card);border-radius:8px;padding:1.75rem}.skill-group h3{color:var(--blue-primary);margin-bottom:1rem;font-size:1.05rem}.skill-list{flex-wrap:wrap;gap:.6rem;display:flex}.skill-list li{color:var(--text-soft);background:#1a1a1d;border-radius:4px;padding:.35rem .65rem;font-size:.87rem}.projects-subheading{color:var(--text-main);margin-top:3rem;margin-bottom:1.25rem;font-size:1.25rem}.projects-subheading:first-of-type{margin-top:0}.events-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;display:grid}.event-card{border:1px solid var(--border);background:var(--bg-card);border-radius:8px;padding:1.75rem}.event-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.75rem;display:flex}.event-head h3{font-size:1.15rem}.event-date{color:var(--blue-primary);white-space:nowrap;font-size:.85rem;font-weight:700}.languages-list{flex-direction:column;gap:1.5rem;max-width:40rem;margin:0 auto;display:flex}.language-head{justify-content:space-between;margin-bottom:.5rem;font-size:.95rem;display:flex}.language-name{color:var(--text-main);font-weight:700}.language-level{color:var(--text-muted)}.language-bar{background:#ffffff0f;border-radius:999px;height:.45rem;overflow:hidden}.language-bar-fill{background:linear-gradient(90deg, var(--blue-primary), #69a2ff);border-radius:999px;height:100%}@media (width<=1024px){.hero-section,.about-grid,.split-section{grid-template-columns:1fr}.hero-section{gap:2rem}.hero-visual{min-height:23rem}.knowledge-grid,.projects-grid,.principles-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.skill-groups,.events-grid{grid-template-columns:1fr}}@media (width<=760px){.section{padding:4.5rem 0}.hero-section{min-height:auto;padding-top:3.5rem;padding-bottom:4rem}.hero-title{font-size:2.75rem}.hero-subtitle{font-size:1.05rem}.hero-cta,.hero-cta .btn{width:100%}.hero-visual{min-height:20rem}.hero-photo-wrap{width:min(60%,16rem)}.about-text h2,.section-title{font-size:2.15rem}.knowledge-grid,.projects-grid,.principles-grid,.form-row{grid-template-columns:1fr}.contact-form{padding:1.5rem}}@media (width<=440px){.hero-title{font-size:2.35rem}.knowledge-card,.project-card,.principle-card{padding:1.35rem}}.section-lead{text-align:center;max-width:46rem;margin:-.35rem auto 2.75rem;font-size:1.04rem}.hero-section{min-height:calc(100vh - 5rem)}.hero-content{max-width:50rem}.hero-title{letter-spacing:-.04em;max-width:48rem;font-size:clamp(3.15rem,5.8vw,5.2rem)}.hero-subtitle{max-width:44rem;font-size:1.12rem;line-height:1.75}.hero-cta{align-items:center}.hero-cta .btn i{margin-right:.55rem}.btn-tertiary{min-height:3.25rem;color:var(--text-soft);justify-content:center;align-items:center;padding:.9rem .35rem;font-weight:700;display:inline-flex}.btn-tertiary:hover{color:var(--text-main);transform:translateY(-2px)}.hero-photo-wrap{width:min(82%,23.5rem)}.hero-photo-glow{opacity:.42}.knowledge-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.skill-groups{grid-template-columns:repeat(3,minmax(0,1fr))}.featured-projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;display:grid}.project-card-featured{flex-direction:column;min-height:25rem;padding:2rem;display:flex}.project-card-featured:first-child,.project-card-featured:nth-child(2){min-height:27rem}.project-card-head{justify-content:space-between;align-items:center;gap:1rem;min-height:1.6rem;margin-bottom:1.1rem;display:flex}.project-type{color:#69a2ff;letter-spacing:.04em;text-transform:uppercase;font-size:.75rem;font-weight:700}.project-card .project-link-icon{flex:none;position:static}.project-card-featured h3{font-size:1.55rem}.project-card-featured p{line-height:1.72}.project-card-featured .tech-stack{margin-top:auto;padding-top:1.5rem}.project-card-footer{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;min-height:2.1rem;margin-top:1.35rem;padding-top:1rem;display:flex}.project-access,.project-link-label{align-items:center;gap:.45rem;font-size:.8rem;font-weight:700;display:inline-flex}.project-access{border-radius:999px;width:fit-content;padding:.35rem .65rem}.project-access-public{color:#8bb8ff;background:#69a2ff14;border:1px solid #69a2ff38}.project-access-private{border:1px solid var(--border-strong);color:var(--text-muted);background:#ffffff09}.project-access-academic{color:#b9a1ff;background:#a884ff14;border:1px solid #a884ff3d}.project-link-label{color:#69a2ff}.project-card-linked:hover .project-link-label{color:var(--text-main)}.projects-section-header{justify-content:space-between;align-items:end;gap:2rem;margin:4rem 0 1.35rem;display:flex}.projects-section-header .eyebrow{margin-bottom:.35rem}.projects-section-header h3{font-size:1.5rem}.text-link{color:#69a2ff;align-items:center;gap:.5rem;font-size:.9rem;font-weight:700;display:inline-flex}.text-link:hover{color:var(--text-main);transform:translateY(-1px)}.projects-grid-secondary{grid-template-columns:repeat(3,minmax(0,1fr))}.projects-grid-secondary .project-card{flex-direction:column;min-height:21rem;display:flex}.projects-grid-secondary .tech-stack{margin-top:auto;padding-top:1.25rem}.contact-section{padding-bottom:8rem}.contact-intro{max-width:44rem;line-height:1.7}.contact-links-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;max-width:70rem;margin:0 auto;display:grid}.contact-link-card{border:1px solid var(--border);background:var(--bg-card);border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.9rem;min-width:0;min-height:8.5rem;padding:1.25rem;display:grid}.contact-link-card:hover{border-color:var(--blue-border);background:var(--blue-soft);box-shadow:var(--shadow-card);transform:translateY(-.3rem)}.contact-link-icon{border:1px solid var(--blue-border);background:var(--blue-soft);color:#69a2ff;border-radius:9px;place-items:center;width:2.75rem;height:2.75rem;font-size:1.05rem;display:grid}.contact-link-copy{min-width:0}.contact-link-card strong,.contact-link-card span{display:block}.contact-link-card strong{margin-bottom:.2rem}.contact-link-card span{color:var(--text-muted);white-space:nowrap;font-size:clamp(.7rem,.75vw,.78rem)}.contact-link-arrow{color:var(--text-dim);font-size:.8rem}.contact-link-card:hover .contact-link-arrow{color:#69a2ff}.contact-form-wrap{border-top:1px solid var(--border);grid-template-columns:minmax(16rem,.75fr) minmax(0,1.35fr);align-items:start;gap:3rem;max-width:62rem;margin:4rem auto 0;padding-top:3rem;display:grid}.contact-form-heading .eyebrow{margin-bottom:.45rem}.contact-form-heading h3{margin-bottom:.8rem;font-size:1.65rem}.contact-form-heading p:last-child{line-height:1.7}.contact-form{border-radius:12px;max-width:none;margin:0;padding:1.75rem}.contact-form .form-row{gap:1rem}.contact-form .form-group{gap:.45rem}.contact-form input,.contact-form textarea{width:100%}.contact-form textarea{min-height:9.5rem}.contact-form-footer{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.contact-form-footer .form-status{flex:15rem;min-height:1.2rem}@media (width<=1100px){.knowledge-grid,.skill-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-links-grid{grid-template-columns:1fr;max-width:42rem}.contact-link-card span{font-size:.78rem}}@media (width<=900px){.featured-projects-grid,.projects-grid-secondary{grid-template-columns:1fr}.project-card-featured,.project-card-featured:first-child,.project-card-featured:nth-child(2){min-height:0}.projects-section-header{flex-direction:column;align-items:flex-start}.contact-form-wrap{grid-template-columns:1fr;gap:1.5rem}}@media (width<=640px){.hero-title{font-size:clamp(2.5rem,13vw,3.5rem)}.hero-cta{flex-direction:column;align-items:stretch}.hero-cta .btn,.btn-tertiary{width:100%}.knowledge-grid,.skill-groups{grid-template-columns:1fr}.project-card-footer{flex-direction:column;align-items:flex-start}.contact-link-card{grid-template-columns:auto minmax(0,1fr);gap:.75rem;padding:1rem}.contact-link-arrow{display:none}.contact-link-card span{font-size:.66rem}.contact-form{padding:1.25rem}.contact-form .form-row{grid-template-columns:1fr}.contact-form-footer{flex-direction:column;align-items:stretch}.contact-form-footer .form-submit{width:100%}}
