:root{--bg:#0a0a0b;--bg2:#111114;--bg3:#1a1a1f;--text:#f0eeea;--muted:#6b6b7a;--accent:#6c63ff;--border:#ffffff12;--font-display:"Syne", system-ui, sans-serif;--font-body:"DM Sans", system-ui, sans-serif;--max:1100px;--nav-h:72px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-weight:400;line-height:1.6}#root{min-height:100vh}main{padding-top:var(--nav-h)}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}ul{list-style:none}img{max-width:100%;display:block}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(24px)}.reveal.revealed{opacity:1;transform:translateY(0)}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero-anim{opacity:0;animation:.8s forwards fadeUp}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.15)}}.section{max-width:var(--max);margin:0 auto;padding:5rem 1.5rem}.section-tag{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem;font-size:.75rem;font-weight:500;display:inline-block}.section-title{font-family:var(--font-display);letter-spacing:-.02em;max-width:20ch;margin-bottom:2.5rem;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;line-height:1.15}.btn{border-radius:8px;justify-content:center;align-items:center;padding:.85rem 1.5rem;font-size:.9rem;font-weight:500;transition:background .2s,color .2s,border-color .2s,transform .2s;display:inline-flex}.btn-primary{color:#0a0a0b;background:#fff}.btn-primary:hover{background:#e8e6e2;transform:translateY(-1px)}.btn-ghost{border:1px solid var(--border);color:var(--text);background:0 0}.btn-ghost:hover{color:var(--text);border-color:#6c63ff66}.btn-sm{padding:.6rem 1.1rem;font-size:.8rem}.nav{z-index:100;height:var(--nav-h);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);background:#0a0a0bbf;justify-content:space-between;align-items:center;padding:0 1.5rem;display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{font-family:var(--font-display);letter-spacing:-.02em;font-size:1.05rem;font-weight:800}.nav-logo span{color:var(--accent)}.nav-links{gap:.25rem;display:flex}.nav-links button{color:var(--muted);border-radius:6px;padding:.5rem .85rem;font-size:.875rem;font-weight:400;transition:color .2s}.nav-links button:hover{color:var(--text)}.nav-toggle{flex-direction:column;gap:5px;padding:.5rem;display:none}.nav-toggle span{background:var(--text);border-radius:1px;width:22px;height:2px;transition:transform .2s;display:block}.hero{max-width:var(--max);min-height:calc(100vh - var(--nav-h));flex-direction:column;justify-content:center;margin:0 auto;padding:4rem 1.5rem 5rem;display:flex}.hero-badge{color:var(--muted);border:1px solid var(--border);border-radius:100px;align-items:center;gap:.5rem;width:fit-content;margin-bottom:1.75rem;padding:.4rem .85rem;font-size:.8rem;display:inline-flex}.hero-dot{background:#22c55e;border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse}.hero-title{font-family:var(--font-display);letter-spacing:-.03em;margin-bottom:1.5rem;font-size:clamp(3rem,8vw,5.5rem);font-weight:800;line-height:1.05}.hero-title span{display:block}.hero-title-muted{color:var(--muted)}.hero-sub{color:var(--muted);max-width:52ch;margin-bottom:2rem;font-size:1.1rem;font-weight:300;line-height:1.7}.hero-actions{flex-wrap:wrap;gap:.75rem;margin-bottom:3.5rem;display:flex}.hero-stats{border-top:1px solid var(--border);flex-wrap:wrap;gap:2rem 3rem;padding-top:2rem;display:flex}.hero-stat strong{font-family:var(--font-display);letter-spacing:-.02em;font-size:1.75rem;font-weight:800;line-height:1.2;display:block}.hero-stat span{color:var(--muted);font-size:.85rem;font-weight:400}.about-grid{grid-template-columns:1fr 1fr;align-items:start;gap:3rem;display:grid}.about-text p{color:var(--muted);margin-bottom:1.25rem;font-weight:300;line-height:1.75}.about-text p:last-child{margin-bottom:0}.about-cards{flex-direction:column;gap:1.25rem;display:flex}.skill-card{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:1.25rem 1.35rem;transition:border-color .2s,transform .2s}.skill-card:hover{border-color:#6c63ff59;transform:translateY(-2px)}.skill-card h3{font-family:var(--font-display);margin-bottom:1rem;font-size:.95rem;font-weight:700}.skill-card ul{flex-wrap:wrap;gap:.5rem;display:flex}.pill{background:var(--bg);border:1px solid var(--border);color:var(--muted);border-radius:100px;padding:.35rem .75rem;font-size:.78rem;transition:color .2s,border-color .2s;display:inline-block}.skill-card:hover .pill{border-color:#6c63ff4d}.skill-card:hover .pill:hover{color:var(--accent);border-color:var(--accent)}.education-list{flex-direction:column;gap:0;display:flex}.education-item{border-bottom:1px solid var(--border);padding:.85rem 0}.education-item:first-child{padding-top:0}.education-item:last-child{border-bottom:none;padding-bottom:0}.education-school{color:var(--text);margin-bottom:.2rem;font-size:.85rem;font-weight:500;line-height:1.35}.education-field{color:var(--muted);font-size:.8rem;font-weight:300;line-height:1.4}.education-period{color:var(--accent);opacity:.85;margin-top:.25rem;font-size:.72rem}.education-card:hover{transform:translateY(-2px)}.timeline{padding-left:2rem;position:relative}.timeline:before{content:"";background:var(--border);width:1px;position:absolute;top:8px;bottom:8px;left:0}.timeline-item{padding-bottom:2.5rem;position:relative}.timeline-item:last-child{padding-bottom:0}.timeline-dot{background:var(--bg3);border:2px solid var(--border);border-radius:50%;width:10px;height:10px;margin-left:-4.5px;transition:background .2s,border-color .2s,box-shadow .2s;position:absolute;top:6px;left:-2rem}.timeline-item:hover .timeline-dot{background:var(--accent);border-color:var(--accent);box-shadow:0 0 12px #6c63ff80}.timeline-content time{color:var(--muted);margin-bottom:.35rem;font-size:.8rem;display:block}.timeline-content h3{font-family:var(--font-display);margin-bottom:.25rem;font-size:1.1rem;font-weight:700}.timeline-company{color:var(--accent);margin-bottom:.5rem;font-size:.9rem;font-weight:500}.timeline-desc{color:var(--muted);max-width:55ch;font-size:.9rem;font-weight:300;line-height:1.65}.projects .section-title{max-width:none}.projects-grid{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}.project-card{background:var(--bg2);border:1px solid var(--border);border-radius:16px;padding:1.75rem;transition:border-color .2s,transform .2s;display:block;position:relative}.project-card:hover{border-color:#6c63ff73;transform:translateY(-2px)}.project-arrow{color:var(--muted);font-size:1.25rem;transition:color .2s,transform .2s;position:absolute;top:1.5rem;right:1.5rem}.project-card:hover .project-arrow{color:var(--accent);transform:translate(3px,-3px)}.project-num{color:var(--muted);letter-spacing:.05em;margin-bottom:1rem;font-size:.75rem;font-weight:500;display:block}.project-card h3{font-family:var(--font-display);margin-bottom:.65rem;padding-right:2rem;font-size:1.15rem;font-weight:700}.project-card>p{color:var(--muted);margin-bottom:1.25rem;font-size:.9rem;font-weight:300;line-height:1.6}.project-tags{flex-wrap:wrap;gap:.45rem;display:flex}.project-tags li{background:var(--bg);border:1px solid var(--border);color:var(--muted);border-radius:100px;padding:.3rem .65rem;font-size:.72rem}.contact{padding-bottom:6rem}.contact-box{text-align:center;background:var(--bg3);border:1px solid var(--border);border-radius:20px;max-width:640px;margin:0 auto;padding:3.5rem 2rem}.contact-box .section-title{max-width:none;margin-left:auto;margin-right:auto}.contact-text{color:var(--muted);margin-bottom:1.75rem;font-weight:300;line-height:1.7}.contact-email{font-family:var(--font-display);color:var(--text);margin-bottom:2rem;font-size:clamp(1.25rem,4vw,1.75rem);font-weight:700;transition:color .2s;display:inline-block}.contact-email:hover{color:var(--accent)}.contact-socials{flex-wrap:wrap;justify-content:center;align-items:center;gap:.65rem;display:flex}.contact-handle{color:var(--muted);letter-spacing:.08em;margin-left:.25rem;font-size:.8rem}.footer{max-width:var(--max);border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin:0 auto;padding:2rem 1.5rem 3rem;display:flex}.footer-logo{font-family:var(--font-display);font-size:.95rem;font-weight:800}.footer-logo span{color:var(--accent)}.footer-copy{color:var(--muted);font-size:.8rem}@media (width<=768px){:root{--nav-h:60px}.nav{padding:0 1rem}.nav-logo{font-size:.95rem}.nav-toggle{display:flex}.nav-links{top:var(--nav-h);border-bottom:1px solid var(--border);opacity:0;pointer-events:none;background:#0a0a0bfa;flex-direction:column;gap:.25rem;padding:1rem 1.5rem 1.5rem;transition:transform .25s,opacity .25s;position:fixed;left:0;right:0;transform:translateY(-100%)}.nav-links--open{opacity:1;pointer-events:auto;transform:translateY(0)}.nav-links button{text-align:left;width:100%;padding:.75rem 0;font-size:.85rem}.section{padding:2.75rem 1rem}.section-tag{margin-bottom:.75rem;font-size:.72rem}.section-title{max-width:none;margin-bottom:1.75rem;font-size:clamp(1.5rem,6vw,2.1rem);line-height:1.2}.btn{padding:.75rem 1.25rem;font-size:.9rem}.hero{min-height:auto;padding:1.75rem 1rem 2.75rem}.hero-badge{margin-bottom:1.25rem;padding:.4rem .75rem;font-size:.78rem}.hero-title{margin-bottom:1rem;font-size:clamp(2rem,8.5vw,2.75rem);line-height:1.08}.hero-sub{margin-bottom:1.5rem;font-size:1rem;line-height:1.65}.hero-actions{gap:.6rem;margin-bottom:2rem}.hero-stats{gap:1.25rem 2rem;padding-top:1.5rem}.hero-stat strong{font-size:1.5rem}.hero-stat span{font-size:.85rem}.about-grid{grid-template-columns:1fr;gap:1.5rem}.about-text p{margin-bottom:1rem;font-size:.97rem;line-height:1.7}.skill-card{padding:1.1rem 1.2rem}.skill-card h3{margin-bottom:.85rem;font-size:.95rem}.pill{padding:.35rem .7rem;font-size:.78rem}.timeline{padding-left:1.5rem}.timeline-dot{left:-1.5rem}.timeline-content h3{font-size:1.02rem}.timeline-company{font-size:.88rem}.timeline-desc{font-size:.92rem}.timeline-item{padding-bottom:2rem}.project-card{border-radius:12px;padding:1.25rem}.project-card h3{padding-right:1.5rem;font-size:1.08rem}.project-card>p{margin-bottom:1rem;font-size:.92rem}.project-tags li{font-size:.76rem}.project-arrow{font-size:1.1rem;top:1.15rem;right:1.15rem}.projects-grid{grid-template-columns:1fr;gap:1rem}.contact{padding-bottom:4rem}.contact-box{border-radius:14px;padding:2rem 1rem}.contact-box .section-title{font-size:clamp(1.45rem,5.5vw,1.85rem)}.contact-text{margin-bottom:1.25rem;font-size:.95rem}.contact-email{word-break:break-word;max-width:100%;margin-bottom:1.5rem;font-size:clamp(.95rem,4vw,1.2rem);line-height:1.45}.btn-sm{padding:.65rem 1rem;font-size:.85rem}.contact-handle{text-align:center;width:100%;margin-top:.25rem;margin-left:0;font-size:.78rem}.contact-socials{gap:.5rem}.footer{flex-direction:column;align-items:flex-start;padding:1.5rem 1rem 2.5rem}.footer-copy{font-size:.75rem;line-height:1.5}}@media (width<=480px){.section{padding:2.75rem 1.1rem}.hero{padding:1.75rem 1.1rem 2.75rem}.hero-title{font-size:clamp(1.9rem,9vw,2.5rem)}.section-title{font-size:clamp(1.45rem,6.5vw,1.75rem)}.hero-stat strong{font-size:1.45rem}.hero-stats{gap:1.15rem 1.75rem}.hero-actions .btn{width:100%}.contact-email{font-size:clamp(.92rem,4.2vw,1.1rem)}}._formation_56oa7_1{width:100%;margin-top:3rem}._formationLabel_56oa7_6{letter-spacing:.35em;text-transform:uppercase;color:var(--accent);margin-bottom:0;font-size:.75rem;font-weight:600}._formationGrid_56oa7_15{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:32px;display:grid}._eduCard_56oa7_22{background:var(--bg3);border:.5px solid var(--border);border-radius:10px;padding:18px 20px;transition:border-color .2s,transform .2s}._eduCard_56oa7_22:hover{border-color:#6c63ff59;transform:translateY(-2px)}._eduInstitution_56oa7_37{color:var(--text);font-size:.88rem;font-weight:600;line-height:1.35}._eduField_56oa7_44{color:var(--muted);margin-top:4px;font-size:.82rem;font-weight:300;line-height:1.45}._eduPeriod_56oa7_52{color:var(--accent);margin-top:6px;font-size:.75rem}@media (width<=768px){._formation_56oa7_1{margin-top:2rem}._formationLabel_56oa7_6{letter-spacing:.28em;font-size:.72rem}._formationGrid_56oa7_15{grid-template-columns:repeat(2,1fr);gap:10px;margin-top:20px}._eduCard_56oa7_22{padding:14px 16px}._eduInstitution_56oa7_37{font-size:.86rem}._eduField_56oa7_44{font-size:.82rem}._eduPeriod_56oa7_52{font-size:.76rem}}@media (width<=480px){._formationGrid_56oa7_15{grid-template-columns:1fr}}
