*{padding:0}*,body{margin:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;overflow-x:hidden}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{min-height:100vh}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}html.lenis{height:auto}.lenis.lenis-smooth{scroll-behavior:auto}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-scrolling iframe{pointer-events:none}.loading-screen{align-items:center;animation:fadeOut .5s ease-in-out forwards;animation-delay:.3s;background:linear-gradient(135deg,#8b5cf6f2,#ec4899f2);display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:99999}@keyframes fadeOut{to{opacity:0;pointer-events:none}}.loading-spinner{align-items:center;display:flex;height:120px;justify-content:center;position:relative;width:120px}.spinner-ring{animation:spin 1.2s cubic-bezier(.5,0,.5,1) infinite;border:4px solid #0000;border-radius:50%;border-top-color:#fff;height:80px;position:absolute;width:80px}.spinner-ring:first-child{animation-delay:-.45s;height:80px;width:80px}.spinner-ring:nth-child(2){animation-delay:-.3s;border-top-color:#fffc;height:60px;width:60px}.spinner-ring:nth-child(3){animation-delay:-.15s;border-top-color:#fff9;height:40px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.skeleton{animation:shimmer .7s ease-in-out infinite;background:linear-gradient(90deg,#ffffff1a 25%,#fff3 50%,#ffffff1a 75%);background-size:200% 100%;border-radius:8px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-intro{grid-gap:4rem;align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:25px;display:grid;gap:4rem;grid-template-columns:1fr 1fr;padding:3rem}.skeleton-text-content{display:flex;flex-direction:column;gap:1rem}.skeleton-title{height:60px;margin-bottom:.5rem;width:80%}.skeleton-subtitle{height:30px;margin-bottom:1rem;width:60%}.skeleton-line{height:20px;margin-bottom:.5rem;width:100%}.skeleton-line.short{width:70%}.skeleton-buttons{display:flex;gap:1rem;margin-top:1rem}.skeleton-button{border-radius:30px;height:50px;width:150px}.skeleton-image-content{align-items:center;display:flex;justify-content:center}.skeleton-circle{border-radius:50%;height:300px;width:300px}.skeleton-section-title{border-radius:12px;height:50px;margin:0 auto 3rem;max-width:80%;width:400px}.skeleton-card{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff26;border-radius:20px;box-shadow:0 8px 24px #0000001a;max-width:320px;overflow:hidden}.skeleton-card-image{height:160px;width:100%}.skeleton-card-content{display:flex;flex-direction:column;gap:.75rem;padding:1.2rem}.skeleton-card-title{border-radius:6px;height:24px;width:80%}.skeleton-tags{display:flex;gap:.5rem;margin-top:.5rem}.skeleton-tag{border-radius:15px;height:24px;width:60px}@media (prefers-color-scheme:dark){.skeleton{background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1a 50%,#ffffff0d 75%);background-size:200% 100%}.skeleton-card{background:#1e1e1e0d;border:1px solid #ffffff26}.skeleton-intro{background:#1e1e1eb3;border:1px solid #fff3}}@media (max-width:768px){.skeleton-intro{border-radius:20px;gap:1.2rem;grid-template-columns:1fr;margin:0 .5rem;padding:1.5rem 1rem;text-align:center}.skeleton-text-content{align-items:center;order:2}.skeleton-image-content{justify-content:center;order:1}.skeleton-circle{height:180px;margin:0 auto;width:180px}.skeleton-title{height:35px;margin:0 auto .5rem;width:85%}.skeleton-subtitle{height:22px;margin:0 auto .8rem;width:65%}.skeleton-line{height:18px;margin:0 auto .4rem;width:90%}.skeleton-line.short{margin:0 auto .4rem;width:70%}.skeleton-buttons{flex-direction:column;gap:.6rem;margin-top:.8rem}.skeleton-button{border-radius:25px;height:45px;width:100%}.skeleton-section-title{height:38px;margin:0 auto 2rem;width:85%}.skeleton-card{border-radius:16px;margin:0 .5rem;max-width:100%;width:100%}.skeleton-card-image{height:150px}.skeleton-card-content{gap:.6rem;padding:1rem}.skeleton-card-title{height:22px;width:85%}.skeleton-line{height:16px}.skeleton-tags{gap:.4rem;margin-top:.4rem}.skeleton-tag{border-radius:12px;height:22px;width:55px}}@media (max-width:480px){.skeleton-intro{gap:1rem;margin:0 .75rem;padding:1.2rem .85rem}.skeleton-circle{height:140px;width:140px}.skeleton-title{height:32px;width:90%}.skeleton-subtitle{height:20px;width:70%}.skeleton-line{height:16px;width:85%}.skeleton-button{height:42px}.skeleton-card{margin:0 .75rem}.skeleton-card-image{height:140px}}.portfolio{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;color:#333;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;opacity:0;overflow-x:hidden;position:relative;transition:opacity .5s ease-in-out}.portfolio.loaded{opacity:1}.portfolio:before{background:#0000;content:"";height:100%;left:0;pointer-events:none;position:fixed;top:0;transition:background .3s ease;width:100%;z-index:1}*{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}a,button{-webkit-tap-highlight-color:rgba(139,92,246,.2);touch-action:manipulation}.contact-description,.contact-form,.contact-item,.contact-subtitle,.download-resume-btn,.intro-buttons,.intro-content:not(.skeleton-intro),.project-card,.resume-header-section,.resume-item,.section-title,.skill-category{opacity:0;transform:translateY(15px) scale(.98);transition:opacity .2s cubic-bezier(.33,1,.68,1),transform .28s cubic-bezier(.33,1,.68,1);will-change:opacity,transform}.contact-description.animate-in,.contact-form.animate-in,.contact-item.animate-in,.contact-subtitle.animate-in,.download-resume-btn.animate-in,.intro-buttons.animate-in,.intro-content.animate-in,.project-card.animate-in,.resume-header-section.animate-in,.resume-item.animate-in,.section-title.animate-in,.skill-category.animate-in{opacity:1!important;transform:translateY(0) scale(1)!important;transition:opacity .2s cubic-bezier(.33,1,.68,1),transform .28s cubic-bezier(.33,1,.68,1)!important}.nav-triggered{animation:navTriggerFadeIn .3s cubic-bezier(.34,1.45,.64,1) forwards!important}@keyframes navTriggerFadeIn{0%{opacity:0;transform:translateY(15px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.skeleton-card,.skeleton-intro{opacity:1!important;transform:translateY(0)!important}.transition-skeleton-overlay{align-items:center;display:flex;flex-direction:column;justify-content:center;margin:0 auto;max-width:1200px;padding:0 2rem;pointer-events:none;position:relative;width:100%;z-index:10}.transition-skeleton-overlay .skeleton{animation:shimmer 1s ease-in-out infinite}.intro-content.content-loaded{animation:bouncyFadeIn .65s cubic-bezier(.34,1.56,.64,1) forwards;opacity:1!important;transform:none!important}@keyframes bouncyFadeIn{0%{opacity:0;transform:scale(.9) translateY(20px)}50%{opacity:1;transform:scale(1.02) translateY(-5px)}to{opacity:1;transform:scale(1) translateY(0)}}.intro-content.content-loaded .intro-image,.intro-content.content-loaded .intro-text-content{animation:slideInBounce .6s cubic-bezier(.34,1.56,.64,1) forwards;opacity:0}.intro-content.content-loaded .intro-text-content{animation-delay:.05s}.intro-content.content-loaded .intro-image{animation-delay:.1s}.intro-content.content-loaded .intro-title{animation:fadeInUp .5s cubic-bezier(.34,1.56,.64,1) forwards;animation-delay:.15s;opacity:0}.intro-content.content-loaded .intro-subtitle{animation:fadeInUp .5s cubic-bezier(.34,1.56,.64,1) forwards;animation-delay:.22s;opacity:0}.intro-content.content-loaded .intro-highlights{animation:fadeInUp .5s cubic-bezier(.34,1.56,.64,1) forwards;animation-delay:.3s;opacity:0}.intro-content.content-loaded .intro-buttons{animation:fadeInUp .6s cubic-bezier(.34,1.56,.64,1) forwards;animation-delay:.38s;opacity:0}.intro-content.content-loaded .profile-image{animation:scaleInBounce .6s cubic-bezier(.34,1.56,.64,1) forwards;animation-delay:.15s;opacity:0}@keyframes slideInBounce{0%{opacity:0;transform:translateX(-20px)}60%{transform:translateX(5px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(15px)}60%{transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleInBounce{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@media (max-width:768px){.intro-content.content-loaded{animation:bouncyFadeInMobile .7s cubic-bezier(.34,1.45,.64,1) forwards}@keyframes bouncyFadeInMobile{0%{opacity:0;transform:scale(.93) translateY(20px)}60%{transform:scale(1.01) translateY(-2px)}to{opacity:1;transform:scale(1) translateY(0)}}.intro-content.content-loaded .intro-image,.intro-content.content-loaded .intro-text-content{animation:fadeInMobile .6s cubic-bezier(.34,1.45,.64,1) forwards}.intro-content.content-loaded .intro-text-content{animation-delay:.1s}.intro-content.content-loaded .intro-image{animation-delay:.15s}.intro-content.content-loaded .intro-title{animation:fadeInMobile .6s cubic-bezier(.34,1.45,.64,1) forwards;animation-delay:.2s}.intro-content.content-loaded .intro-subtitle{animation:fadeInMobile .6s cubic-bezier(.34,1.45,.64,1) forwards;animation-delay:.28s}.intro-content.content-loaded .intro-highlights{animation:fadeInMobile .6s cubic-bezier(.34,1.45,.64,1) forwards;animation-delay:.36s}.intro-content.content-loaded .intro-buttons{animation:fadeInMobile .65s cubic-bezier(.34,1.45,.64,1) forwards;animation-delay:.44s}.intro-content.content-loaded .profile-image{animation:scaleInMobile .65s cubic-bezier(.34,1.45,.64,1) forwards;animation-delay:.2s}@keyframes fadeInMobile{0%{opacity:0;transform:translateY(15px)}60%{transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleInMobile{0%{opacity:0;transform:scale(.85)}60%{transform:scale(1.03)}to{opacity:1;transform:scale(1)}}.contact-item,.intro-buttons,.intro-content:not(.skeleton-intro),.project-card,.resume-item,.section-title,.skill-category{opacity:0;transform:translateY(25px) scale(.96);transition:opacity .5s cubic-bezier(.25,.46,.45,.94),transform .6s cubic-bezier(.25,.46,.45,.94)}.section-title{opacity:0;transform:translateY(25px) scale(.96);transition:opacity .45s cubic-bezier(.25,.46,.45,.94),transform .5s cubic-bezier(.25,.46,.45,.94)}.project-card,.resume-item,.skill-category{opacity:0;transform:translateY(25px) scale(.96);transition:opacity .55s cubic-bezier(.25,.46,.45,.94),transform .65s cubic-bezier(.25,.46,.45,.94)}.contact-item.animate-in,.intro-buttons.animate-in,.project-card.animate-in,.resume-item.animate-in,.section-title.animate-in,.skill-category.animate-in{opacity:1!important;transform:translateY(0) scale(1)!important}.skeleton{animation:shimmer 1.1s ease-in-out infinite}*{-webkit-tap-highlight-color:rgba(139,92,246,.2)}.section{-webkit-overflow-scrolling:touch;transform:translateZ(0);will-change:transform}.smooth-mobile{transition:opacity .55s cubic-bezier(.25,.46,.45,.94),transform .65s cubic-bezier(.25,.46,.45,.94)!important}.contact-item,.project-card,.resume-item,.skill-category{backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:translateZ(0)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.intro-content.content-loaded,.intro-content.content-loaded *{animation:none!important;opacity:1!important;transform:none!important}}.section-title{transition:opacity .2s cubic-bezier(.33,1,.68,1),transform .3s cubic-bezier(.33,1,.68,1)}.project-card,.resume-item,.skill-category{transform-origin:center center;transition:opacity .28s cubic-bezier(.33,1,.68,1),transform .38s cubic-bezier(.33,1,.68,1)}.section{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:100px 0;position:relative;transition:opacity .25s ease-out,transform .25s ease-out;z-index:2}.section-fade-out{animation:sectionFadeOut .3s cubic-bezier(.4,0,1,1) forwards;pointer-events:none}.section-fade-in{animation:sectionFadeIn .5s cubic-bezier(.16,1,.3,1) forwards}@keyframes sectionFadeOut{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.98) translateY(-5px)}}@keyframes sectionFadeIn{0%{opacity:0;transform:scale(.97) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.resume-section{padding:60px 0}.navbar{display:flex;display:-webkit-flex;flex-direction:column;gap:1rem;overscroll-behavior:contain;position:fixed;right:2rem;top:50%;transform:translateY(-50%);-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);z-index:9999}.nav-link,.navbar{pointer-events:auto;touch-action:manipulation}.nav-link{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffff1a;border:1px solid #ffffff4d;border-radius:30px;box-shadow:0 8px 32px #0000001a;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;min-width:100px;padding:1rem 1.5rem;position:relative;text-align:center;text-shadow:0 2px 4px #0003;transition:all .4s cubic-bezier(.25,.46,.45,.94);-webkit-user-select:none;user-select:none;z-index:10000}.nav-link.active,.nav-link:hover{background:linear-gradient(135deg,#8b5cf6e6,#a855f7e6);border-color:#ffffff80;box-shadow:0 12px 40px #8b5cf680;color:#fff;transform:translateX(-10px) scale(1.08)}.container{align-items:center;display:flex;flex-direction:column;justify-content:center;margin:0 auto;max-width:1200px;padding:0 2rem;width:100%}.section-title{color:#fff;font-size:3rem;font-weight:700;margin-bottom:3rem;text-align:center;text-shadow:2px 2px 4px #0000004d;width:100%}.resume-section .section-title{font-size:2.5rem;margin-bottom:1.5rem}.intro-section{background:#0000;opacity:1}.intro-content{grid-gap:4rem;align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:25px;box-shadow:0 8px 32px #0000001a;display:grid;gap:4rem;grid-template-columns:1fr 1fr;padding:3rem}.intro-text-content{display:flex;flex-direction:column;gap:0}.intro-title{color:#fff;font-size:3.5rem;font-weight:700;line-height:1.2;margin-bottom:1rem}.intro-subtitle{color:#ffffffe6;font-size:1.5rem;font-weight:300;margin-bottom:1.5rem}.intro-description{margin-bottom:2.5rem;width:100%}.intro-highlights{display:flex;flex-direction:column;gap:1rem;list-style:none;margin:0;padding:0}.intro-highlights li{align-items:center;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background:#ffffff14;border-left:4px solid #8b5cf6;border-radius:12px;color:#fffffff2;display:flex;font-size:1.15rem;gap:.75rem;line-height:1.6;padding:.75rem 1.5rem;transition:all .3s ease}.intro-highlights li .icon{color:#8b5cf6;flex-shrink:0;font-size:.8em}.intro-highlights li:hover{background:#ffffff1f;border-left-color:gold;transform:translateX(8px)}.intro-text{color:#ffffffd9;font-size:1.1rem;line-height:1.7;margin-bottom:1rem;padding-left:1.5rem;position:relative}.intro-text:last-child{margin-bottom:0}.intro-text:before{color:#8b5cf6;content:"▶";font-size:.8rem;left:0;margin-top:.1rem;position:absolute;top:0}.intro-buttons{display:flex;gap:1rem}.btn{border:none;border-radius:30px;cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;padding:1rem 2rem;text-align:center;text-decoration:none;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#8b5cf6,#a855f7);box-shadow:0 4px 15px #8b5cf666;color:#fff}.btn-primary:hover{box-shadow:0 8px 25px #8b5cf699;transform:translateY(-3px)}.btn-secondary{background:#0000;border:2px solid #fff;color:#fff}.btn-secondary:hover{background:#fff;color:#8b5cf6;transform:translateY(-3px)}.intro-image{align-items:center;display:flex;justify-content:center}.profile-card{background:#ffffff1a;border:1px solid #fff3;border-radius:20px;box-shadow:0 8px 32px #0000001a;padding:2rem;text-align:center}.profile-image{background:linear-gradient(135deg,#8b5cf6,#a855f7);border-radius:50%;height:300px;margin:0 auto;width:300px}.placeholder-avatar,.profile-image{align-items:center;display:flex;justify-content:center}.placeholder-avatar{color:#fff}.placeholder-avatar svg{height:80px;width:80px}.profile-photo{border:4px solid #fff3;border-radius:50%;box-shadow:0 8px 32px #0000004d;height:100%;object-fit:cover;transition:all .3s ease;width:100%}.profile-photo:hover{border-color:#8b5cf680;box-shadow:0 12px 40px #8b5cf64d;transform:scale(1.05)}.projects-section{background:#0000;color:#fff;opacity:1}.projects-section .section-title{color:#fff;text-shadow:2px 2px 4px #0000004d}.projects-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin:0 auto;max-width:1200px;width:100%}.project-card-link{color:inherit;display:block;text-decoration:none;width:100%}.project-card{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:20px;box-shadow:0 10px 30px #0003;cursor:pointer;max-width:320px;overflow:hidden;position:relative;transition:all .4s cubic-bezier(.25,.46,.45,.94)}.project-card:before{background:linear-gradient(135deg,#8b5cf61a,#ec48991a);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .4s ease;z-index:1}.project-card:hover{background:#fff;border-color:#8b5cf64d;box-shadow:0 25px 50px #8b5cf64d;transform:translateY(-15px) scale(1.02)}.project-card:hover:before{opacity:1}.project-card:hover .project-image{transform:scale(1.05)}.project-card:hover .project-title{color:#8b5cf6;transform:translateY(-2px)}.project-card:hover .project-description{color:#6b7280}.project-image{align-items:center;background:#f8f9fa;display:flex;height:160px;justify-content:center;overflow:hidden;position:relative;transition:transform .4s ease;z-index:2}.project-image img{display:block;height:100%;object-fit:contain;object-position:center;padding:.75rem;transition:transform .4s ease;width:100%}.project-placeholder{align-items:center;color:#fff;display:flex;justify-content:center}.project-placeholder svg{height:60px;width:60px}.project-content{padding:1.2rem;position:relative;transition:all .3s ease;z-index:2}.project-title{color:#333;font-size:1.3rem;font-weight:700;margin-bottom:.75rem;transition:all .3s ease}.project-title a{color:inherit;text-decoration:none;transition:color .3s ease}.project-title a:hover{color:#8b5cf6}.project-description{color:#666;font-size:.95rem;line-height:1.5;margin-bottom:1rem;transition:color .3s ease}.project-tech{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}.tech-tag{background:linear-gradient(135deg,#8b5cf6,#a855f7);border-radius:15px;color:#fff;font-size:.75rem;font-weight:500;padding:.25rem .7rem}.project-links{display:flex;gap:1rem}.project-link{color:#8b5cf6;font-weight:600;text-decoration:none;transition:color .3s ease}.project-link:hover{color:#a855f7}.resume-section{background:#0000;color:#fff;opacity:1}.resume-section .section-title{color:#fff;text-shadow:2px 2px 4px #0000004d}.resume-header-section{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:3rem}.download-resume-btn{align-items:center;background:linear-gradient(135deg,#8b5cf6,#a855f7);border:none;border-radius:30px;box-shadow:0 4px 15px #8b5cf64d;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;overflow:hidden;padding:1rem 2rem;position:relative;transition:all .3s cubic-bezier(.25,.46,.45,.94)}.download-resume-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s ease;width:100%}.download-resume-btn:hover{background:linear-gradient(135deg,#7c3aed,#9333ea);box-shadow:0 8px 25px #8b5cf666;transform:translateY(-3px) scale(1.05)}.download-resume-btn:hover:before{left:100%}.download-resume-btn:active{transform:translateY(-1px) scale(1.02)}.download-resume-btn svg{transition:transform .3s ease}.download-resume-btn:hover svg{transform:translateY(-2px)}.resume-content{grid-gap:3rem;align-items:start;display:grid;gap:3rem;grid-template-columns:1fr 1fr;margin:0 auto;max-width:1200px;width:100%}@media (max-width:768px){.resume-content{gap:2rem;grid-template-columns:1fr}}.resume-subtitle{align-items:center;border-bottom:2px solid #fffc;color:#fff;display:flex;font-size:1.5rem;font-weight:700;gap:.75rem;margin-bottom:1.25rem;padding-bottom:.4rem;position:relative}.resume-subtitle:before{background:linear-gradient(135deg,#8b5cf6,#ec4899);border-radius:2px;content:"";height:1.5rem;width:3px}.resume-item{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #ffffff4d;border-left:4px solid #0000;border-radius:18px;box-shadow:0 8px 25px #00000026;cursor:pointer;margin-bottom:1rem;overflow:hidden;padding:1.25rem;position:relative;transition:all .4s cubic-bezier(.25,.46,.45,.94)}.resume-item:before{background:linear-gradient(90deg,#0000,#8b5cf61a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s ease;width:100%}.resume-item:hover{background:#fff;border-color:#8b5cf64d #8b5cf64d #8b5cf64d #8b5cf6;box-shadow:0 15px 35px #8b5cf640;transform:translateY(-8px) scale(1.02)}.resume-item:hover:before{left:100%}.resume-item:hover .resume-title{color:#8b5cf6}.resume-item:hover .resume-company{color:#6b7280}.resume-header{display:flex;flex-direction:column;margin-bottom:.75rem;position:relative;z-index:2}.resume-position{color:#333;font-size:1.1rem;font-weight:700;line-height:1.3;margin-bottom:.35rem}.resume-company{color:#8b5cf6;font-size:1rem;font-weight:600;margin-bottom:.3rem}.resume-date{background:#8b5cf61a;border-radius:15px;color:#999;display:inline-block;font-size:.95rem;font-weight:500;padding:.3rem .8rem;width:fit-content}.resume-description{color:#666;font-size:.9rem;line-height:1.5;position:relative;z-index:2}.skills-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr);width:100%}.skill-category{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #ffffff4d;border-left:4px solid #0000;border-radius:18px;box-shadow:0 8px 25px #00000026;cursor:pointer;overflow:hidden;padding:1.25rem;position:relative;transition:all .4s cubic-bezier(.25,.46,.45,.94)}.skill-category:before{background:linear-gradient(135deg,#8b5cf60d,#ec48990d);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .4s ease}.skill-category:hover{background:#fff;border-color:#8b5cf64d #8b5cf64d #8b5cf64d #8b5cf6;box-shadow:0 12px 25px #8b5cf633;transform:translateY(-5px) scale(1.01)}.skill-category:hover:before{opacity:1}.skill-category:hover .skill-title{color:#8b5cf6;transform:translateY(-1px)}.skill-title{color:#333;font-size:1rem;font-weight:700;margin-bottom:.75rem;transition:all .3s ease}.skill-tags,.skill-title{position:relative;z-index:2}.skill-tags{display:flex;flex-wrap:wrap;gap:.5rem}.education{border-top:2px solid #fff3;margin-top:1.5rem;padding-top:1.5rem}.skill-tag{background:linear-gradient(135deg,#8b5cf6,#a855f7);border-radius:12px;color:#fff;font-size:.8rem;font-weight:500;padding:.3rem .75rem}.education{margin-top:2rem}.contact-section{background:#0000;opacity:1}.contact-content{grid-gap:4rem;display:grid;gap:4rem;grid-template-columns:1fr 1fr;margin:0 auto;max-width:1200px;width:100%}.contact-subtitle{color:#fff;font-size:2rem;font-weight:700;margin-bottom:1rem}.contact-description{color:#ffffffe6;font-size:1.1rem;line-height:1.6;margin-bottom:2rem}.contact-details{margin-bottom:2rem}.contact-item{gap:1rem;margin-bottom:1.5rem}.contact-icon,.contact-item{align-items:center;display:flex}.contact-icon{background:#fff3;border-radius:15px;color:#fff;height:50px;justify-content:center;width:50px}.contact-icon svg{height:24px;width:24px}.contact-text h4{color:#fff;font-size:1.1rem;margin-bottom:.3rem}.contact-text p{color:#fffc;margin:0}.social-links{display:flex;flex-wrap:wrap;gap:1rem}.social-link{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:20px;color:#fff;display:flex;gap:.5rem;padding:.8rem 1.5rem;text-decoration:none;transition:all .3s ease}.social-link:hover{background:#fff3;transform:translateY(-2px)}.social-icon{align-items:center;display:flex;justify-content:center}.social-icon svg{height:20px;width:20px}.contact-form{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:20px;overflow:hidden;padding:2rem;position:relative;transition:all .4s cubic-bezier(.25,.46,.45,.94)}.contact-form:before{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .4s ease}.contact-form:hover{background:#fff;border-color:#8b5cf64d;box-shadow:0 15px 35px #8b5cf633;transform:translateY(-5px)}.contact-form:hover:before{opacity:1}.form-group{margin-bottom:1.5rem}.form-input{background:#fffc;border:1px solid #0003;border-radius:15px;color:#333;font-size:1rem;padding:1rem;position:relative;transition:all .3s ease;width:100%;z-index:2}.form-input::placeholder{color:#00000080}.form-input:focus{background:#fff;border-color:#8b5cf6;box-shadow:0 5px 15px #8b5cf633;outline:none;transform:translateY(-2px)}.form-input:hover{background:#ffffffe6;border-color:#0000004d}.form-textarea{min-height:120px;position:relative;resize:vertical;z-index:2}.form-textarea:focus{background:#fff;border-color:#8b5cf6;box-shadow:0 5px 15px #8b5cf633;outline:none;transform:translateY(-2px)}.form-textarea:hover{background:#ffffffe6;border-color:#0000004d}.form-submit{margin-top:1rem;width:100%}.footer{background:#0000;color:#fff;opacity:1;padding:2rem 0;text-align:center}@media (prefers-color-scheme:dark){.portfolio:before{background:#000000bf}.intro-content{background:#1e1e1eb3;border:1px solid #fff3}.intro-title{color:#e5e5e5}.intro-subtitle{color:#e5e5e5e6}.intro-highlights li{background:#ffffff14;border-left-color:#a855f7;color:#e5e5e5f2}.contact-subtitle{color:#e5e5e5}.contact-description{color:#e5e5e5e6}.contact-text h4{color:#e5e5e5}.contact-text p{color:#e5e5e5cc}.nav-link{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#1e1e1e4d;border:1px solid #fff3;color:#e5e5e5}.project-card{background:#1e1e1ef2;border:1px solid #fff3}.project-card:hover{background:#141414}.project-title{color:#e5e5e5}.project-description{color:#b0b0b0}.project-card:hover .project-title{color:#a855f7}.project-card:hover .project-description{color:#9ca3af}.project-link{color:#a855f7}.project-link:hover{color:#c084fc}.resume-item{background:#1e1e1ef2;border:1px solid #fff3}.resume-item:hover{background:#141414}.resume-position{color:#e5e5e5}.resume-company{color:#a855f7}.resume-date,.resume-description{color:#b0b0b0}.skill-category{background:#1e1e1ef2;border:1px solid #fff3}.skill-category:hover{background:#141414}.skill-title{color:#e5e5e5}.skill-category:hover .skill-title{color:#a855f7}.contact-form{background:#1e1e1ef2;border:1px solid #fff3}.contact-form:hover{background:#141414}.form-input{background:#323232cc;border:1px solid #fff3;color:#e5e5e5}.form-input::placeholder{color:#ffffff80}.form-input:hover{background:#3c3c3ce6;border-color:#ffffff4d}.form-input:focus{background:#282828;border-color:#8b5cf6}.form-textarea:hover{background:#3c3c3ce6;border-color:#ffffff4d}.form-textarea:focus{background:#282828;border-color:#8b5cf6}@media (max-width:768px){.navbar{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#1e1e1e4d;border:1px solid #fff3}}}@media (max-width:768px){body{-ms-overflow-style:none;scrollbar-width:none}body::-webkit-scrollbar{display:none}.navbar{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #ffffff40;border-radius:30px;bottom:1.5rem;box-shadow:0 8px 32px #0003;flex-direction:row;gap:.5rem;padding:.75rem 1rem;right:50%;top:auto;transform:translateX(50%);-webkit-transform:translateX(50%);z-index:10000}.nav-link,.navbar{pointer-events:auto}.nav-link{-webkit-tap-highlight-color:rgba(139,92,246,.2);background:#0000;border:none;border-radius:25px;box-shadow:none;color:#fff;cursor:pointer;font-size:.8rem;min-width:60px;padding:.6rem 1rem;position:relative;text-shadow:0 1px 3px #0000004d;touch-action:manipulation;z-index:10001}.nav-link.active,.nav-link:hover{background:#8b5cf666;transform:scale(1.1)}.container{padding:0 1.5rem}.container,.section{align-items:center;justify-content:center}.section{min-height:100vh;padding:0 0 120px}.section-title{font-size:2.5rem;margin-bottom:2rem;text-align:center;width:100%}.intro-section{padding-top:0}.intro-content{align-items:center;border-radius:20px;gap:1.5rem;grid-template-columns:1fr;margin:0 .5rem;padding:1.5rem 1.25rem;text-align:center}.intro-text-content{order:2}.intro-image{order:1}.intro-title{font-size:2rem;line-height:1.1;margin-bottom:.5rem;text-align:center}.intro-subtitle{font-size:1.1rem;margin-bottom:1rem;text-align:center}.intro-description{text-align:left;width:100%}.intro-highlights{gap:.5rem}.intro-highlights li{border-radius:10px;font-size:.95rem;line-height:1.4;padding:.5rem .85rem}.intro-text{font-size:1rem;padding-left:0;text-align:center}.intro-text:before{display:none}.intro-buttons{flex-direction:column;gap:.75rem}.btn{border-radius:25px;font-size:1rem;padding:1rem 1.5rem;width:100%}.projects-grid{gap:1.25rem;grid-template-columns:1fr;justify-items:center;padding:0 .5rem}.project-card{border-radius:16px;margin-bottom:0;max-width:500px;width:100%}.project-image{height:150px}.project-content{padding:1rem}.project-title{font-size:1.2rem;margin-bottom:.75rem}.project-description{font-size:.9rem;line-height:1.4;margin-bottom:1rem}.project-tech{gap:.4rem}.tech-tag{border-radius:12px;font-size:.75rem;padding:.25rem .7rem}.resume-content{gap:1.5rem;grid-template-columns:1fr}.resume-header-section{align-items:center;flex-direction:column;gap:1.25rem;text-align:center}.download-resume-btn{font-size:.9rem;max-width:280px;padding:.85rem 1.5rem;width:100%}.resume-subtitle{font-size:1.5rem;justify-content:center;margin-bottom:1.25rem;text-align:center}.resume-item{border-radius:16px;margin:0 .5rem 1.25rem;padding:1.25rem}.resume-position{font-size:1.1rem}.resume-company{font-size:.95rem}.resume-description{font-size:.9rem;line-height:1.5}.skills-grid{gap:1.25rem;grid-template-columns:1fr}.skill-category{border-radius:16px;margin:0 .5rem 1.25rem;padding:1.25rem}.skill-title{font-size:1.05rem;margin-bottom:.85rem}.skill-tag{border-radius:10px;font-size:.8rem;padding:.3rem .85rem}.contact-content{gap:2rem;grid-template-columns:1fr}.contact-subtitle{font-size:1.6rem;margin-bottom:.85rem;text-align:center}.contact-description{font-size:.95rem;line-height:1.5;text-align:center}.contact-details{margin-bottom:2rem}.contact-item{flex-direction:row;margin-bottom:1.25rem}.contact-icon{height:45px;width:45px}.contact-text h4{font-size:1rem}.contact-text p{font-size:.9rem}.social-links{gap:.75rem;justify-content:center}.social-link{border-radius:18px;font-size:.9rem;padding:.7rem 1.2rem}.contact-form{border-radius:16px;margin:0 .5rem;padding:1.5rem}.form-input{border-radius:12px;font-size:.9rem;padding:.85rem}.form-textarea{min-height:100px}.form-submit{font-size:1rem;padding:1rem}.footer{font-size:.9rem;padding:2rem 1rem}}@media (max-width:480px){.navbar{bottom:1rem;gap:.4rem;justify-content:space-around;left:1rem;padding:.6rem .8rem;right:1rem;transform:none}.nav-link{-webkit-tap-highlight-color:rgba(139,92,246,.3);border-radius:22px;font-size:.75rem;min-width:50px;padding:.55rem .9rem;position:relative;touch-action:manipulation;z-index:10002}.container{padding:0 1.25rem}.container,.section{justify-content:center}.section{align-items:center;padding:0 0 100px}.section-title{font-size:2rem;margin-bottom:1.5rem}.intro-section{padding-top:0}.intro-content{border-radius:18px;gap:1rem;margin:0 .75rem;padding:1.25rem .85rem}.intro-title{font-size:1.75rem;line-height:1.1;margin-bottom:.4rem}.intro-subtitle{font-size:1.05rem;margin-bottom:.75rem}.intro-highlights{gap:.45rem}.intro-highlights li{border-radius:8px;font-size:.85rem;line-height:1.3;padding:.45rem .75rem}.intro-text{font-size:.95rem;line-height:1.6;padding-left:1rem}.intro-text:before{font-size:.7rem}.btn{border-radius:22px;font-size:.9rem;padding:.8rem 1.2rem}.projects-grid{gap:1.25rem;padding:0 .75rem}.project-card{border-radius:16px}.project-image{height:160px}.project-content{padding:1rem}.project-title{font-size:1.2rem;margin-bottom:.75rem}.project-description{font-size:.9rem;line-height:1.5;margin-bottom:1.25rem}.tech-tag{border-radius:10px;font-size:.7rem;padding:.25rem .65rem}.project-link{font-size:.9rem}.resume-subtitle{font-size:1.5rem}.resume-item{border-radius:16px;margin:0 .75rem 1.25rem;padding:1.25rem}.resume-position{font-size:1.1rem}.resume-company{font-size:.95rem}.resume-date{border-radius:12px;font-size:.85rem;padding:.25rem .7rem}.resume-description{font-size:.9rem;line-height:1.6}.skill-category{border-radius:16px;margin:0 .75rem 1.25rem;padding:1.25rem}.skill-title{font-size:1rem;margin-bottom:.85rem}.skill-tag{border-radius:10px;font-size:.8rem;padding:.3rem .8rem}.contact-subtitle{font-size:1.6rem}.contact-description{font-size:.95rem;line-height:1.5}.contact-item{margin-bottom:1rem}.contact-icon{height:40px;width:40px}.contact-icon svg{height:20px;width:20px}.contact-text h4{font-size:.95rem}.contact-text p,.social-link{font-size:.85rem}.social-link{border-radius:15px;padding:.65rem 1rem}.social-icon svg{height:18px;width:18px}.contact-form{border-radius:16px;margin:0 .75rem;padding:1.5rem}.form-input{border-radius:12px;font-size:.9rem;padding:.85rem}.form-textarea{min-height:90px}.form-submit{font-size:.95rem;padding:.9rem}.profile-image{height:160px;width:160px}.placeholder-avatar{font-size:3rem}.placeholder-avatar svg{height:60px;width:60px}.download-resume-btn{border-radius:25px;font-size:.9rem;padding:.85rem 1.5rem}.download-resume-btn svg{height:18px;width:18px}.footer{font-size:.85rem;padding:1.75rem 1rem}}@supports (-webkit-touch-callout:none){.section{min-height:-webkit-fill-available}body{position:relative}input,select,textarea{font-size:16px!important}.portfolio{-webkit-overflow-scrolling:touch}}@supports not ((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){.contact-form,.intro-content,.nav-link,.navbar,.project-card,.resume-item,.skill-category{background:#fffffffa!important}}@media screen and (-webkit-min-device-pixel-ratio:0){.project-card:hover,.resume-item:hover,.skill-category:hover{transform:translateY(-8px) scale(1.02);will-change:transform}*{backface-visibility:hidden}}body{-webkit-overflow-scrolling:touch;overscroll-behavior-y:none}@media screen and (max-width:768px){input[type=email],input[type=text],select,textarea{font-size:16px}.section{min-height:100vh;min-height:-webkit-fill-available}}.highlight{-webkit-text-fill-color:#0000;text-fill-color:#0000;background:linear-gradient(45deg,gold,#ffed4e);background:-webkit-linear-gradient(45deg,gold,#ffed4e);-webkit-background-clip:text;background-clip:text}.btn-primary,.download-resume-btn,.skill-tag,.tech-tag{background:linear-gradient(135deg,#8b5cf6,#a855f7);background:-moz-linear-gradient(135deg,#8b5cf6 0,#a855f7 100%)}.btn:hover,.nav-link.active,.nav-link:hover,.project-card:hover,.resume-item:hover,.skill-category:hover{transform:translateY(-8px)}.contact-content,.intro-buttons,.projects-grid,.resume-content,.skills-grid,.social-links{display:flex}.contact-content,.projects-grid,.resume-content,.skills-grid{display:grid}.nav-link,.project-card,.resume-item,.skill-category{box-shadow:0 8px 25px #00000026}.btn,.nav-link,.project-card,.resume-item,.skill-category,button{transition:all .3s ease}canvas{-moz-filter:blur(2px);-ms-filter:blur(2px);-o-filter:blur(2px);filter:blur(2px)}.footer,.section{transition:opacity .6s ease}body,html{height:100%;height:-webkit-fill-available;overflow-x:hidden}.btn,.nav-link,button{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.btn:active,.nav-link:active,a:active,button:active{-webkit-tap-highlight-color:rgba(139,92,246,.3);tap-highlight-color:#8b5cf64d}.portfolio{-webkit-overflow-scrolling:touch;overflow-scrolling:touch}@supports (-webkit-touch-callout:none){.portfolio{min-height:100vh;min-height:-webkit-fill-available}}.portfolio,body,html{max-width:100vw;overflow-x:hidden}@media screen and (max-width:768px){.navbar{position:sticky;position:fixed}}.nav-link,.project-card,.resume-item,.skill-category{transform:translateZ(0);will-change:transform}html{scroll-behavior:smooth;-webkit-scroll-behavior:smooth}input,textarea{-webkit-appearance:none;appearance:none}.btn,button{-webkit-appearance:button;appearance:button}@supports not (gap:1rem){.intro-buttons>*+*{margin-top:1rem}.social-links>*+*{margin-left:1rem}.project-tech>*+*,.skill-tags>*+*{margin-left:.5rem}}body{overscroll-behavior:none;-webkit-overscroll-behavior:none}@supports (padding:max(0px)){.navbar{padding-bottom:max(1.5rem,env(safe-area-inset-bottom));padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}.container{padding-left:max(1.5rem,env(safe-area-inset-left));padding-right:max(1.5rem,env(safe-area-inset-right))}}.btn-primary,.download-resume-btn{background-size:100% 100%}input:-webkit-autofill,input:-webkit-autofill:focus,input:-webkit-autofill:hover,textarea:-webkit-autofill,textarea:-webkit-autofill:focus,textarea:-webkit-autofill:hover{-webkit-text-fill-color:#fff;-webkit-box-shadow:inset 0 0 0 1000px #ffffff1a;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}body{font-smoothing:antialiased;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"kern" 1,"kern";font-kerning:normal;text-rendering:optimizeLegibility}@supports (-webkit-touch-callout:none){.section{min-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom))}}
/*# sourceMappingURL=main.ac57b17b.css.map*/