:root{--bg-primary:#050508;--bg-secondary:#0a0a0f;--bg-card:#111118b3;--bg-card-hover:#191923cc;--accent-purple:#8b5cf6;--accent-blue:#3b82f6;--accent-cyan:#06b6d4;--accent-purple-glow:#8b5cf64d;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--border-color:#ffffff14;--border-hover:#ffffff26;--radius-sm:8px;--radius-md:12px;--radius-lg:24px;--shadow-sm:0 4px 6px -1px #0000001a;--shadow-md:0 10px 15px -3px #0000001a;--shadow-glow:0 0 20px #8b5cf626;--transition-fast:.2s ease;--transition-smooth:.4s cubic-bezier(.4, 0, .2, 1);--transition-bounce:.5s cubic-bezier(.68, -.55, .265, 1.55)}*{box-sizing:border-box;scroll-behavior:smooth;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:Inter,sans-serif;line-height:1.6;overflow-x:hidden}a{color:inherit;transition:var(--transition-fast);text-decoration:none}ul{list-style:none}img{max-width:100%;display:block}input,textarea,button{font-family:inherit}.section{z-index:1;max-width:1200px;margin:0 auto;padding:100px 2rem;position:relative}.section__container{width:100%}.section__label{color:var(--accent-purple);text-transform:uppercase;letter-spacing:2px;margin-bottom:1rem;font-family:JetBrains Mono,monospace;font-size:.85rem;font-weight:600;display:inline-block}.section__title{background:linear-gradient(90deg,#fff,#94a3b8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:1.5rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:800;line-height:1.1}.section__subtitle{color:var(--text-secondary);max-width:600px;margin-bottom:3rem;font-size:1.1rem}.bg-grid{pointer-events:none;z-index:-1;background-image:radial-gradient(#8b5cf60d 1px,#0000 1px);background-size:40px 40px;position:fixed;inset:0}.bg-glow{filter:blur(120px);opacity:.15;pointer-events:none;z-index:-1;border-radius:50%;width:600px;height:600px;position:fixed}.bg-glow--purple{background:var(--accent-purple);top:-100px;left:-100px}.bg-glow--blue{background:var(--accent-blue);bottom:-100px;right:-100px}.bg-glow--cyan{background:var(--accent-cyan);opacity:.05;top:50%;left:50%;transform:translate(-50%,-50%)}.cursor-glow{pointer-events:none;z-index:0;background:radial-gradient(circle,#8b5cf61a 0%,#0000 70%);border-radius:50%;width:400px;height:400px;transition:left .15s ease-out,top .15s ease-out;position:fixed;transform:translate(-50%,-50%)}.navbar{z-index:1000;transition:all var(--transition-smooth);padding:1.5rem 2rem;position:fixed;top:0;left:0;right:0}.navbar.scrolled{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border-color);background:#0a0a0fcc;padding:1rem 2rem}.navbar__inner{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;display:flex}.navbar__logo{background:linear-gradient(135deg, var(--accent-purple), var(--accent-blue));-webkit-text-fill-color:transparent;letter-spacing:-1px;-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:900}.navbar__links{gap:2rem;display:flex}.navbar__link{color:var(--text-secondary);font-size:.9rem;font-weight:500}.navbar__link:hover,.navbar__link.active{color:var(--text-primary)}.navbar__cta{background:var(--accent-purple);border-radius:var(--radius-sm);box-shadow:var(--shadow-glow);color:#fff;cursor:pointer;transition:all var(--transition-fast);border:none;padding:.6rem 1.25rem;font-family:inherit;font-size:.9rem;font-weight:600}.navbar__cta:hover{filter:brightness(1.1);transform:translateY(-2px)}.navbar__menu-btn{color:#fff;cursor:pointer;background:0 0;border:none;font-size:1.5rem;display:none}@media (width<=768px){.navbar__links{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);flex-direction:column;gap:1.5rem;padding:2rem;display:none;position:absolute;top:100%;left:0;right:0}.navbar__links.open{display:flex}.navbar__menu-btn{display:block}.navbar__cta{display:none}}.btn{border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-smooth);border:none;align-items:center;gap:.75rem;padding:.8rem 1.75rem;font-size:1rem;font-weight:600;display:inline-flex}.btn--primary{background:linear-gradient(135deg, var(--accent-purple), var(--accent-blue));color:#fff;box-shadow:var(--shadow-glow)}.btn--primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #8b5cf666}.btn--ghost{border:1px solid var(--border-color);color:var(--text-primary);background:#ffffff0d}.btn--ghost:hover{border-color:var(--border-hover);background:#ffffff1a}.hero{align-items:center;min-height:100vh;display:flex;overflow:hidden}.hero__container{grid-template-columns:1.2fr .8fr;align-items:center;gap:4rem;display:grid}.hero__badge{color:var(--accent-purple);background:#8b5cf61a;border:1px solid #8b5cf633;border-radius:100px;align-items:center;gap:.6rem;margin-bottom:2rem;padding:.4rem 1rem;font-size:.8rem;font-weight:600;display:inline-flex}.hero__badge .dot{background:var(--accent-purple);border-radius:50%;width:8px;height:8px;animation:2s infinite pulse}.hero__greeting{color:var(--accent-purple);min-height:1.5em;margin-bottom:1rem;font-family:JetBrains Mono,monospace;font-size:1.2rem}.hero__name{margin-bottom:1.5rem;font-size:clamp(3rem,8vw,5.5rem);line-height:1}.hero__name-gradient{background:linear-gradient(135deg, var(--accent-purple), var(--accent-blue));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero__roles{flex-wrap:wrap;gap:1.5rem;margin-bottom:2rem;display:flex}.hero__role{color:var(--text-secondary);font-size:.95rem;font-weight:500}.hero__desc{color:var(--text-secondary);max-width:540px;margin-bottom:3rem;font-size:1.15rem}.hero__actions{gap:1.5rem;margin-bottom:4rem;display:flex}.hero__stats{gap:3rem;display:flex}.hero__stat-value{color:var(--text-primary);font-size:2rem;font-weight:800}.hero__stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;font-size:.85rem}.hero__visual{justify-content:center;display:flex;position:relative}.hero__avatar-wrapper{z-index:1;width:380px;height:380px;position:relative}.hero__avatar-ring{border:1px solid #8b5cf633;border-radius:50%;animation:10s linear infinite rotate;position:absolute;inset:-20px}.hero__avatar-ring--outer{border-style:dashed;animation-duration:20s;animation-direction:reverse;inset:-40px}.hero__avatar{object-fit:cover;border:4px solid var(--bg-secondary);width:100%;height:100%;box-shadow:var(--shadow-glow);border-radius:50%}.hero__float-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:var(--radius-md);white-space:nowrap;box-shadow:var(--shadow-md);z-index:2;background:#111118e6;align-items:center;gap:.6rem;padding:.8rem 1.2rem;font-size:.85rem;display:flex;position:absolute}.hero__float-card--top{top:10%;right:-20px}.hero__float-card--bottom{bottom:20%;left:-30px}.hero__float-card .icon{font-size:1.2rem}.hero__float-card .label{color:var(--text-muted)}.hero__float-card .value{color:var(--accent-purple);font-weight:700}.about__grid{grid-template-columns:1fr 1.2fr;align-items:center;gap:4rem;margin-top:3rem;display:grid}.about__image-wrapper{border-radius:var(--radius-lg);position:relative;overflow:hidden}.about__image{border-radius:var(--radius-lg);aspect-ratio:4/5;object-fit:cover;object-position:top center;border:1px solid var(--border-color);width:100%;transition:transform var(--transition-smooth)}.about__image-wrapper:hover .about__image{transform:scale(1.03)}.about__image-overlay{background:linear-gradient(180deg, transparent 60%, var(--bg-primary) 100%);pointer-events:none;position:absolute;inset:0}.about__content{flex-direction:column;gap:1.5rem;display:flex}.about__text{color:var(--text-secondary);font-size:1.05rem}.about__text strong{color:var(--text-primary)}.about__highlights{grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1rem;display:grid}.about__highlight-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all var(--transition-fast);padding:1.25rem}.about__highlight-card:hover{background:var(--bg-card-hover);border-color:var(--border-hover);transform:translateY(-4px)}.about__highlight-icon{margin-bottom:.75rem;font-size:1.5rem}.about__highlight-title{margin-bottom:.25rem;font-size:1rem;font-weight:700}.about__highlight-desc{color:var(--text-muted);font-size:.85rem}.skills__grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;display:grid}.skill-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition-smooth);padding:2.5rem}.skill-card:hover{background:var(--bg-card-hover);border-color:var(--border-hover);box-shadow:var(--shadow-glow)}.skill-card__icon{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:50px;height:50px;margin-bottom:1.5rem;font-size:1.8rem;display:flex}.skill-card__icon--cyan{color:var(--accent-cyan);background:#06b6d41a}.skill-card__icon--purple{color:var(--accent-purple);background:#8b5cf61a}.skill-card__icon--blue{color:var(--accent-blue);background:#3b82f61a}.skill-card__icon--pink{color:#ec4899;background:#ec48991a}.skill-card__icon--green{color:#10b981;background:#10b9811a}.skill-card__icon--orange{color:#f59e0b;background:#f59e0b1a}.skill-card__title{margin-bottom:.75rem;font-size:1.25rem;font-weight:700}.skill-card__desc{color:var(--text-secondary);margin-bottom:1.5rem;font-size:.95rem}.skill-card__tags{flex-wrap:wrap;gap:.6rem;display:flex}.skill-card__tag{border:1px solid var(--border-color);color:var(--text-muted);background:#ffffff0d;border-radius:100px;padding:.3rem .8rem;font-size:.8rem;font-weight:500}.projects__grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:2.5rem;display:grid}.project-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition-smooth);overflow:hidden}.project-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-glow)}.project-card__image{object-fit:cover;border-bottom:1px solid var(--border-color);width:100%;height:240px}.project-card__content{padding:2rem}.project-card__category{color:var(--accent-purple);text-transform:uppercase;margin-bottom:.5rem;font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:600;display:block}.project-card__title{margin-bottom:1rem;font-size:1.4rem;font-weight:700}.project-card__desc{color:var(--text-secondary);margin-bottom:1.5rem;font-size:.95rem;line-height:1.7}.project-card__tech{flex-wrap:wrap;gap:.6rem;margin-bottom:2rem;display:flex}.project-card__tech-tag{color:var(--accent-purple);background:#8b5cf614;border:1px solid #8b5cf626;border-radius:100px;padding:.25rem .7rem;font-size:.75rem;font-weight:500}.project-card__links{border-top:1px solid var(--border-color);gap:1.5rem;padding-top:1.5rem;display:flex}.project-card__link{color:var(--text-secondary);align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;display:flex}.project-card__link:hover{color:var(--accent-purple)}.timeline{margin-top:3rem;padding-left:2rem;position:relative}.timeline:before{content:"";background:linear-gradient(180deg, var(--accent-purple), var(--accent-blue), transparent);border-radius:2px;width:2px;position:absolute;top:0;bottom:0;left:0}.timeline__item{padding-bottom:2.5rem;padding-left:2rem;position:relative}.timeline__item:before{content:"";background:var(--bg-primary);border:2px solid var(--accent-purple);border-radius:50%;width:12px;height:12px;position:absolute;top:6px;left:-2rem;transform:translate(-5px)}.timeline__item:hover:before{background:var(--accent-purple);box-shadow:0 0 12px var(--accent-purple-glow)}.timeline__date{color:var(--accent-purple);margin-bottom:.5rem;font-family:JetBrains Mono,monospace;font-size:.8rem;font-weight:600}.timeline__title{margin-bottom:.25rem;font-size:1.15rem;font-weight:700}.timeline__company{color:var(--text-secondary);margin-bottom:.75rem;font-size:.9rem}.timeline__desc{color:var(--text-muted);font-size:.85rem;line-height:1.7}.loading-state,.error-state,.empty-state{text-align:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);color:var(--text-secondary);padding:4rem;font-size:1.1rem}.loading-state i{color:var(--accent-purple);margin-right:.5rem}.error-state i{color:#ef4444;margin-right:.5rem}.empty-state strong{color:var(--accent-purple)}.project-card__image-container{background:#0d1117;width:100%;height:240px;overflow:hidden}.achievements__grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;margin-top:3rem;display:grid}.achievement-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition-smooth);text-align:center;padding:2rem}.achievement-card:hover{background:var(--bg-card-hover);border-color:var(--border-hover);box-shadow:var(--shadow-glow);transform:translateY(-4px)}body.resume-open{overflow:hidden}.resume-modal{z-index:99999;justify-content:center;align-items:center;width:100%;height:100%;padding:1.5rem;display:flex;position:fixed;top:0;left:0}.resume-modal__overlay{opacity:.9;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#000;width:100%;height:100%;position:absolute;top:0;left:0}.resume-modal__content{z-index:100;border-radius:16px;flex-direction:column;width:100%;max-width:900px;max-height:95vh;display:flex;position:relative;overflow-y:auto;box-shadow:0 30px 60px -12px #0009;color:#1a1a1a!important;background:#fff!important}.resume-modal__actions{z-index:101;background:#f8fafc;border-bottom:1px solid #e2e8f0;justify-content:flex-end;gap:1rem;padding:1rem 2rem;display:flex;position:sticky;top:0}.resume-paper{min-height:100%;padding:2.5rem;font-family:Inter,sans-serif;line-height:1.3;color:#1a1a1a!important;background:#fff!important}.latex-header{text-align:center;margin-bottom:.8rem}.latex-name{color:#000;letter-spacing:.5px;margin-bottom:.2rem;font-family:Inter,sans-serif;font-size:22pt;font-weight:700}.latex-contact{color:#333;font-size:9.5pt}.latex-contact a{color:#333;text-decoration:none}.latex-contact a:hover{text-decoration:underline}.latex-pipe{color:#666;margin:0 .4rem}.latex-section{margin-bottom:.6rem}.latex-section-title{color:#000;text-transform:uppercase;border-bottom:1px solid #d3d3d3;width:100%;margin-bottom:.3rem;padding-bottom:1px;font-size:11.5pt;font-weight:700;display:block}.latex-section-content{padding-left:0}.latex-text{color:#141414;margin:0;font-size:9.5pt;line-height:1.3}.latex-subheading{margin-bottom:.4rem}.latex-subheading-row{justify-content:space-between;align-items:baseline;margin-bottom:0;display:flex}.latex-bold{color:#000;font-size:10.5pt;font-weight:700}.latex-italic{color:#000;font-size:9.5pt;font-style:italic}.latex-date{color:#4d4d4d;font-size:9.5pt}.latex-list{margin:.1rem 0 0 1rem;padding:0;list-style-type:disc}.latex-list-item{color:#141414;margin-bottom:.1rem;font-size:9.5pt;line-height:1.3}.latex-list-bare{margin:0;padding:0;list-style:none}@media print{@page{margin:5mm 15mm 15mm;size:A4}body,html{color:#000!important;background:#fff!important;height:auto!important;overflow:visible!important}.main-content,.no-print{display:none!important}.resume-modal{z-index:1!important;background:#fff!important;margin:0!important;padding:0!important;display:block!important;position:relative!important}.resume-modal__overlay{display:none!important}.resume-modal__content{box-shadow:none!important;background:#fff!important;border-radius:0!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;margin:0!important;padding:0!important;display:block!important;position:relative!important;overflow:visible!important}.resume-paper{box-shadow:none!important;min-height:auto!important;margin:0!important;padding:0!important;display:block!important}*{text-shadow:none!important;box-shadow:none!important}.latex-section-title{page-break-after:avoid;break-after:avoid}.latex-subheading{page-break-inside:avoid;break-inside:avoid}}@media (width<=640px){.resume-modal{padding:0}.resume-modal__content{border-radius:0;max-height:100vh}.resume-paper{padding:1.5rem}.resume-item__header{flex-direction:column;gap:.25rem}}.achievement-card__icon{margin-bottom:1rem;font-size:2.5rem}.achievement-card__title{margin-bottom:.75rem;font-size:1.1rem;font-weight:700}.achievement-card__desc{color:var(--text-secondary);font-size:.85rem;line-height:1.6}.contact__grid{grid-template-columns:1fr 1fr;gap:3rem;margin-top:3rem;display:grid}.contact__info{flex-direction:column;gap:1.5rem;display:flex}.contact__card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all var(--transition-smooth);align-items:center;gap:1rem;padding:1.25rem;display:flex}.contact__card:hover{background:var(--bg-card-hover);border-color:var(--border-hover);transform:translate(4px)}.contact__card-icon{border-radius:var(--radius-sm);background:#8b5cf61a;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.2rem;display:flex}.contact__card-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;font-size:.75rem}.contact__card-value{color:var(--text-primary);font-size:.9rem;font-weight:500}.contact__form{flex-direction:column;gap:1rem;display:flex}.form__group{flex-direction:column;gap:.4rem;display:flex}.form__label{color:var(--text-secondary);font-size:.8rem;font-weight:500}.form__input,.form__textarea{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);transition:all var(--transition-fast);outline:none;padding:.75rem 1rem;font-size:.9rem}.form__input:focus,.form__textarea:focus{border-color:var(--accent-purple);box-shadow:0 0 0 3px #8b5cf61a}.form__textarea{resize:vertical;min-height:120px}.form__submit{align-self:flex-start;margin-top:.5rem}.footer{border-top:1px solid var(--border-color);margin-top:4rem;padding:4rem 2rem}.footer__inner{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;display:flex}.footer__text{color:var(--text-muted);font-size:.9rem}.footer__socials{gap:1rem;display:flex}.footer__social{border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border-color);width:40px;height:40px;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.footer__social:hover{background:var(--bg-card-hover);border-color:var(--accent-purple);color:var(--accent-purple);transform:translateY(-3px)}.whatsapp-float{color:#fff;z-index:1001;width:60px;height:60px;transition:all var(--transition-bounce);background-color:#25d366;border-radius:50%;justify-content:center;align-items:center;font-size:30px;display:flex;position:fixed;bottom:30px;right:30px;box-shadow:0 4px 15px #0000004d}.whatsapp-float:hover{background-color:#128c7e;transform:scale(1.1)translateY(-5px)}.whatsapp-float__tooltip{border-radius:var(--radius-sm);white-space:nowrap;opacity:0;visibility:hidden;transition:all var(--transition-smooth);background:#0a0a0fe6;padding:.5rem 1rem;font-size:.8rem;font-weight:600;position:absolute;right:80px}.whatsapp-float:hover .whatsapp-float__tooltip{opacity:1;visibility:visible}.reveal{opacity:0;transition:all .8s cubic-bezier(.4,0,.2,1);transform:translateY(30px)}.reveal.revealed{opacity:1;transform:translateY(0)}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.5)}to{opacity:1;transform:scale(1)}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (width<=1024px){.hero__container{text-align:center;grid-template-columns:1fr}.hero__content{order:2}.hero__visual{order:1;margin-bottom:2rem}.hero__actions,.hero__stats,.hero__roles{justify-content:center}.about__grid,.contact__grid{grid-template-columns:1fr}}@media (width<=768px){.section{padding:60px 1.5rem}.hero__name{font-size:3.5rem}.hero__actions{flex-direction:column}.footer__inner{text-align:center;flex-direction:column;gap:2rem}}
