@import"https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap";*{font-family:Inter,sans-serif}.sidebar{overflow:hidden}html,body,#root{height:100%}body{background:radial-gradient(1200px 600px at 10% 10%,#0b0b0b,#000 40%);color:#e6e6e6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background-image:url(/Gemini_Generated_Image_cqgqlpcqgqlpcqgq.png);background-repeat:no-repeat;background-size:cover;background-position:center center;filter:blur(12px) brightness(.32);transform:scale(1.02)}body.pointer-focused:before{filter:blur(8px) brightness(.42);transform:scale(1.01)}.fluctuate{animation:fluct 2.5s ease-in-out infinite}@keyframes fluct{0%{filter:brightness(1)}50%{filter:brightness(1.06)}to{filter:brightness(1)}}.hero-img{border-radius:50%;width:260px;height:260px;object-fit:cover;box-shadow:0 6px 20px #0009,0 0 0 4px #ffffff05 inset;transition:transform .6s ease,box-shadow .6s ease;animation:float 3s ease-in-out infinite}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-6px)}to{transform:translateY(0)}}.btn-primary{background-color:#1f6feb;border-color:#1f6feb}.btn-outline-secondary{color:#e6e6e6;border-color:#ffffff1f}.container,main.container{background:transparent}h1,.display-5,.display-4{color:#fff;letter-spacing:-.02em}.lead{font-size:1.15rem;color:#d9d9d9}section{padding-top:3rem;padding-bottom:3rem}.hero-section{margin-bottom:2rem}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-nav .nav-link{color:#e6e6e6f2}.navbar-dark .navbar-nav .nav-link:hover{color:#fff}.hero-title{font-size:clamp(1.8rem,5vw,3rem);word-spacing:.6rem}.hero-subtitle{font-size:1rem;color:#cfcfcf;margin-bottom:.45rem;font-weight:600;letter-spacing:.01em}.progressive{display:inline-block}.hero-desc{font-size:clamp(1rem,2.4vw,1.3rem);color:#d7d7d7;line-height:1.6}.hero-image-wrap{display:flex;justify-content:center;align-items:flex-start}.hero-image-wrap .hero-img{transform:translateY(-12px)}.hero-text-wrap{display:flex;flex-direction:column;justify-content:center;padding-top:12px}.hero-row{gap:4.5rem}.hero-row{display:flex!important;flex-wrap:nowrap!important;align-items:center}.hero-image-wrap{flex:0 0 40%;max-width:40%;display:flex;justify-content:center;align-items:center}.hero-text-wrap{flex:1 1 60%;max-width:60%;padding-left:1.25rem}.hero-img{border-radius:50%;width:100%;max-width:360px;height:auto;aspect-ratio:1/1;object-fit:cover;box-shadow:0 6px 30px #0009,0 0 0 4px #ffffff05 inset;transition:transform .6s ease,box-shadow .6s ease;animation:float 3s ease-in-out infinite}.hero-image-wrap{position:relative}.hero-image-wrap:after{content:"";position:absolute;right:-18px;top:12%;height:76%;width:1px;background:#ffffff0f;border-radius:1px}.hero-title .char{display:inline-block;opacity:0;transform:translateY(8px)}.hero-desc{opacity:0;transform:translateY(6px);transition:opacity .42s ease,transform .42s ease;font-size:clamp(1.02rem,2.4vw,1.3rem);line-height:1.6}.hero-desc.reveal{opacity:1;transform:translateY(0)}.hero-socials{width:100%;display:flex;justify-content:center;align-items:center;gap:14px;margin-top:.75rem}.hero-socials .social-link{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:8px;transition:transform .18s ease,background .18s ease,color .18s ease;color:#d9d9d9}.hero-socials .social-link:hover{transform:translateY(-6px);color:#fff}@keyframes social-pop{0%{transform:translateY(6px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.about-photo-scatter{position:relative;width:100%;max-width:420px;margin:0 auto;aspect-ratio:1/1;will-change:transform,opacity;border-radius:50%;overflow:hidden;box-shadow:0 14px 36px #0000008c}.scatter-piece{position:absolute;overflow:hidden;background-repeat:no-repeat;background-position:0 0;background-size:cover;border-radius:0;backface-visibility:hidden;contain:paint;transition:transform .52s cubic-bezier(.22,.9,.28,1),opacity .44s ease}.reveal-on-scroll.show .about-photo-scatter .scatter-piece{transform:translate(0) rotate(0) scale(1)!important;opacity:1!important}@media (max-width: 767.98px){.about-photo-scatter{max-width:320px}}@keyframes char-in{to{opacity:1;transform:translateY(0)}}@media (max-width: 991.98px){.hero-row{flex-wrap:wrap!important;gap:1.25rem}.hero-image-wrap,.hero-text-wrap{max-width:100%;flex:0 0 100%}.hero-image-wrap:after{display:none}.hero-text-wrap{padding-left:0;margin-top:.5rem;align-items:center}.hero-desc{font-size:1rem;text-align:center}.hero-title{word-spacing:.25rem;text-align:center}.hero-socials{flex-wrap:wrap;gap:10px}}@media (max-width: 576px){.hero-img{max-width:180px}section{padding-top:2rem;padding-bottom:2rem}}@media (max-width: 500px){.container,main.container{padding-left:1rem;padding-right:1rem}.hero-title{font-size:1.6rem;line-height:1.2}.hero-desc{font-size:.98rem}.hero-actions{flex-direction:row!important}.hero-actions .btn{flex:1 1 auto;min-width:0}.hero-socials{justify-content:center;gap:10px;flex-wrap:nowrap}.hero-socials .social-link{width:36px;height:36px;animation:social-pop .42s ease both}.hero-socials .social-link:nth-child(1){animation-delay:60ms}.hero-socials .social-link:nth-child(2){animation-delay:.12s}.hero-socials .social-link:nth-child(3){animation-delay:.18s}.hero-socials .social-link:nth-child(4){animation-delay:.24s}.hero-socials .social-link:nth-child(5){animation-delay:.3s}.hero-socials .social-link:nth-child(6){animation-delay:.36s}.hero-socials .social-link:nth-child(7){animation-delay:.42s}.hero-socials .social-link:nth-child(8){animation-delay:.48s}.hero-section{margin-bottom:.5rem!important}#about{padding-top:1.25rem}#projects-list{display:flex!important;flex-wrap:nowrap!important;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.75rem}#projects-list>.col{flex:0 0 85%;max-width:85%;scroll-snap-align:center}.project-reveal{opacity:1;transform:translate(0)}.project-reveal .card{animation:slide-in .42s ease both}@keyframes slide-in{0%{transform:translate(16px);opacity:0}to{transform:translate(0);opacity:1}}.project-card-image{height:160px}.about-photo-scatter{max-width:260px}.btn-lg{padding:.65rem 1rem;font-size:1rem}.navbar-custom{padding:.75rem 1rem}}@media (max-width: 414px){.hero-img{max-width:150px}.about-photo-scatter{max-width:240px}}@media (max-width: 375px){.hero-img{max-width:135px}.about-photo-scatter{max-width:220px}}.navbar-custom{background:linear-gradient(180deg,#ffffff05,#ffffff03);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid rgba(255,255,255,.04);padding:.9rem 1.25rem}.navbar-custom .navbar-brand{color:#fff}.navbar-custom .nav-link{color:#e6e6e6f2}.navbar-custom .nav-link.active,.navbar-custom .nav-link:hover{color:#fff}.navbar-custom .navbar-toggler{border-color:#ffffff26}.navbar-custom .navbar-toggler-icon{filter:invert(1)}.navbar-custom .btn-outline-light{border-color:#ffffff1f;color:#e6e6e6}.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.06);color:#e6e6e6}.btn-ghost:hover{background:#ffffff05;color:#fff}.project-card-image{height:200px;object-fit:cover}.project-badge{position:absolute;left:12px;top:12px;background:#1f6feb1f;color:#dce9ff;padding:4px 8px;border-radius:6px;font-size:.8rem}.projects-footer{display:flex;justify-content:center;margin-top:1rem}.project-reveal{opacity:0}.project-reveal.left{transform:translate(-28px)}.project-reveal.right{transform:translate(28px)}.project-reveal.show{opacity:1;transform:translate(0) translateY(0)}.project-reveal.hide-up{opacity:0;transform:translateY(-20px) scale(.98)}.reveal-on-scroll{opacity:0;transform:translateY(18px)}.reveal-on-scroll.show{opacity:1;transform:translateY(0)}.reveal-from-left{opacity:0;transform:translate(-36px)}.reveal-from-left.show{opacity:1;transform:translate(0);transition:transform .42s cubic-bezier(.22,.9,.28,1),opacity .42s ease}.reveal-from-right{opacity:0;transform:translate(36px)}.reveal-from-right.show{opacity:1;transform:translate(0);transition:transform .42s cubic-bezier(.22,.9,.28,1),opacity .42s ease}.reveal-from-bottom{opacity:0;transform:translateY(26px)}.reveal-from-bottom.show{opacity:1;transform:translateY(0);transition:transform .42s cubic-bezier(.22,.9,.28,1),opacity .42s ease}.reveal-scale{opacity:0;transform:scale(.96)}.reveal-scale.show{opacity:1;transform:scale(1);transition:transform .38s cubic-bezier(.22,.9,.28,1),opacity .32s ease}.reveal-stagger .project-card{opacity:0;transform:translateY(18px) scale(.992)}.reveal-stagger.show .project-card{opacity:1;transform:translateY(0) scale(1);transition:transform .42s cubic-bezier(.22,.9,.28,1),opacity .42s ease}.timeline-item{opacity:0;transform:translate(-18px) scale(.996);transition:transform .42s cubic-bezier(.22,.9,.28,1),opacity .42s ease}.reveal-on-scroll.show .timeline-item{opacity:1;transform:translate(0) scale(1)}.skill-badge{opacity:0;transform:scale(.85);transition:transform .36s cubic-bezier(.22,.9,.28,1),opacity .32s ease}.reveal-on-scroll.show .skill-badge{opacity:1;transform:scale(1)}.progressive-title{font-weight:700;color:#fff;letter-spacing:.02em}.footer-links li a{opacity:0;transform:translate(-36px);transition:transform .42s cubic-bezier(.22,.9,.28,1),opacity .42s ease}.reveal-on-scroll.show .footer-links li:nth-child(1) a{transition-delay:80ms;opacity:1;transform:translate(0)}.reveal-on-scroll.show .footer-links li:nth-child(2) a{transition-delay:.16s;opacity:1;transform:translate(0)}.reveal-on-scroll.show .footer-links li:nth-child(3) a{transition-delay:.24s;opacity:1;transform:translate(0)}.reveal-on-scroll.show .footer-links li:nth-child(4) a{transition-delay:.32s;opacity:1;transform:translate(0)}.footer-copy{opacity:0;transform:translate(-28px);transition:transform .42s cubic-bezier(.22,.9,.28,1),opacity .42s ease}.reveal-on-scroll.show .footer-copy{opacity:1;transform:translate(0)}.panel-reveal{opacity:0;transform:translate(20px);transition:transform .42s cubic-bezier(.22,.9,.28,1),opacity .42s ease}.reveal-on-scroll.show .panel-reveal{opacity:1;transform:translate(0)}.footer-copy,.footer-copy span,.footer-links li a,.footer-links li a .footer-icon{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;filter:none!important;color:#e6e6e6!important;text-shadow:none!important}@keyframes wiggle-subtle{0%{transform:translate(0) rotate(0)}25%{transform:translate(-4px) rotate(-1.8deg)}50%{transform:translate(4px) rotate(1.8deg)}75%{transform:translate(-2px) rotate(-.9deg)}to{transform:translate(0) rotate(0)}}@keyframes wiggle-strong{0%{transform:translate(0) rotate(0)}25%{transform:translate(-10px) rotate(-5deg)}50%{transform:translate(10px) rotate(5deg)}75%{transform:translate(-5px) rotate(-2.5deg)}to{transform:translate(0) rotate(0)}}.reveal-on-scroll.show .footer-links.wiggle-subtle li:nth-child(1) a{animation:wiggle-subtle .82s cubic-bezier(.22,.9,.28,1) both;animation-delay:60ms}.reveal-on-scroll.show .footer-links.wiggle-subtle li:nth-child(2) a{animation:wiggle-subtle .88s cubic-bezier(.22,.9,.28,1) both;animation-delay:.14s}.reveal-on-scroll.show .footer-links.wiggle-subtle li:nth-child(3) a{animation:wiggle-subtle .94s cubic-bezier(.22,.9,.28,1) both;animation-delay:.2s}.reveal-on-scroll.show .footer-links.wiggle-subtle li:nth-child(4) a{animation:wiggle-subtle 1s cubic-bezier(.22,.9,.28,1) both;animation-delay:.26s}.reveal-on-scroll.show .footer-links.wiggle-strong li:nth-child(1) a{animation:wiggle-strong .82s cubic-bezier(.22,.9,.28,1) both;animation-delay:60ms}.reveal-on-scroll.show .footer-links.wiggle-strong li:nth-child(2) a{animation:wiggle-strong .88s cubic-bezier(.22,.9,.28,1) both;animation-delay:.14s}.reveal-on-scroll.show .footer-links.wiggle-strong li:nth-child(3) a{animation:wiggle-strong .94s cubic-bezier(.22,.9,.28,1) both;animation-delay:.2s}.reveal-on-scroll.show .footer-links.wiggle-strong li:nth-child(4) a{animation:wiggle-strong 1s cubic-bezier(.22,.9,.28,1) both;animation-delay:.26s}.reveal-on-scroll.show .panel-reveal.wiggle-subtle{animation:wiggle-subtle .78s cubic-bezier(.22,.9,.28,1) both}.reveal-on-scroll.show .panel-reveal.wiggle-strong{animation:wiggle-strong .78s cubic-bezier(.22,.9,.28,1) both}.reveal-on-scroll .hero-title .char{opacity:0;transform:translateY(8px)}.reveal-on-scroll.show .hero-title .char{animation:char-in .42s cubic-bezier(.22,.9,.28,1) forwards}html{scroll-padding-top:88px}.navbar-nav .nav-link{padding:.6rem .9rem;margin-left:.45rem}.panel-dark .form-control,.panel-dark .form-control:focus,.panel-dark textarea.form-control{background-color:#ffffff05;border:1px solid rgba(255,255,255,.06);color:#e6e6e6}.panel-dark .form-floating>label{color:#bfbfbf}.panel-dark .form-control::placeholder{color:#ffffff59}.panel-dark .btn-primary{background-color:#26f;border-color:#26f}.panel-dark .form-control.is-invalid{border-color:#ff5a5ae6;box-shadow:0 0 0 .15rem #ff5a5a1f}.panel-dark .invalid-feedback{color:#ffb3b3}@media (max-width: 767.98px){.panel-dark.p-4{padding:1rem}}.card{background-color:#0f0f11;border:1px solid rgba(255,255,255,.04)}.card .card-body{color:#dcdcdc}.card .card-text{color:#cfcfcf}.badge.text-bg-secondary{background-color:#ffffff0f;color:#e6e6e6}.card .btn-outline-secondary{color:#e6e6e6;border-color:#ffffff0f}.bg-body-tertiary{background-color:#ffffff05!important;color:#e6e6e6}.panel-dark{background:#ffffff08;border:1px solid rgba(255,255,255,.04);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.text-body-emphasis{color:#fff!important}.text-body-secondary{color:#bfbfbf!important}.fs-4{font-size:1.25rem!important}.timeline{display:flex;flex-direction:column}.timeline-item{position:relative;padding-left:1rem}.timeline-item:before{content:"";position:absolute;left:-12px;top:12px;width:10px;height:10px;background:#1f6feb;border-radius:50%;box-shadow:0 0 0 4px #1f6feb0f}.resume-header .btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.04);color:#e6e6e6}.resume-header .btn-primary{background-color:#26f;border-color:#26f}.btn-download{background:linear-gradient(90deg,#40a9ff,#1f6feb);color:#fff;border:none;padding:.5rem .85rem;display:inline-flex;align-items:center;gap:8px;box-shadow:0 8px 24px #1f6feb47;transition:transform .18s ease,box-shadow .18s ease,filter .16s ease}.btn-download:hover,.btn-download:focus{transform:translateY(-3px);box-shadow:0 14px 40px #1f6feb5c;filter:brightness(1.05)}.btn-download:active{transform:translateY(-1px) scale(.995)}.card.panel-dark{background:linear-gradient(180deg,#ffffff05,#ffffff03)}aside .panel-dark img.hero-img{margin:0 auto 12px}.char.space{display:inline-block;width:.45rem}.blue-light-btn{width:26px;height:14px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg,rgba(255,255,255,.02),transparent);cursor:pointer;position:relative;outline:none}.blue-light-btn:after{content:"";position:absolute;left:2px;top:2px;width:10px;height:10px;border-radius:50%;background:#cbd5e1;transition:all .18s cubic-bezier(.4,0,.2,1)}.blue-light-btn.active{background:linear-gradient(90deg,#0ea5e9,#2563eb)}.blue-light-btn.active:after{transform:translate(12px);background:#fff}.blue-accent{--accent: #0ea5e9}.blue-accent a,.blue-accent .btn-ghost{color:var(--accent)!important}.blue-accent .navbar-custom{box-shadow:0 6px 18px #0ea5e90f}
