:root{--bg: #0a0510;--card-bg: #150b24;--accent: #bc13fe;--accent-glow: rgba(188, 19, 254, .4);--text-main: #ffffff;--text-dim: #b8a9c9;--grid-color: rgba(188, 19, 254, .05)}.aurora-left,.aurora-right{position:fixed;top:-100px;width:700px;height:700px;background:radial-gradient(circle,var(--accent) 0%,transparent 70%);filter:blur(120px);opacity:.15;z-index:-1;pointer-events:none;animation:auroraWave 8s infinite ease-in-out}.aurora-left{left:-200px}.aurora-right{right:-200px;animation-delay:-4s}@keyframes auroraWave{0%,to{transform:translate(0) scale(1) rotate(0);opacity:.15}33%{transform:translate(30px,50px) scale(1.2) rotate(10deg);opacity:.25}66%{transform:translate(-20px,20px) scale(.9) rotate(-5deg);opacity:.1}}*{margin:0;padding:0;box-sizing:border-box}.smooth-scroll{scroll-behavior:smooth}body{background-color:var(--bg);color:var(--text-main);font-family:Plus Jakarta Sans,sans-serif;background-image:linear-gradient(var(--grid-color) 1px,transparent 1px),linear-gradient(90deg,var(--grid-color) 1px,transparent 1px);background-size:50px 50px;background-attachment:fixed;overflow-x:hidden;width:100%}.portfolio-container{overflow-x:hidden;width:100%;position:relative}.hidden-state{opacity:0;transform:translateY(30px)}.reload-swipe{opacity:0;animation:swipeUpFade 1s cubic-bezier(.16,1,.3,1) forwards}.reload-pop{opacity:0;animation:popupFade 1s cubic-bezier(.16,1,.3,1) forwards}@keyframes swipeUpFade{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes popupFade{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes floatAnimation{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes waveEffect{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes blink{50%{opacity:0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes zoomIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}@keyframes zoomOut{0%{transform:scale(1);opacity:1}to{transform:scale(.9);opacity:0}}nav{display:flex;justify-content:center;align-items:center;padding:.8rem 10%;position:fixed;width:100%;top:0;z-index:1000;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom:none}.nav-links{display:flex;align-items:center;gap:0;position:relative;background:#0a051099;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);padding:6px;border-radius:100px;border:1px solid rgba(188,19,254,.15);box-shadow:0 8px 32px #0006}.nav-active-pill{position:absolute;height:calc(100% - 12px);background:var(--accent);border-radius:100px;z-index:1;transition:left .4s cubic-bezier(.16,1,.3,1),width .4s cubic-bezier(.16,1,.3,1),opacity .3s ease;box-shadow:0 0 20px var(--accent-glow)}.nav-links a{color:var(--text-dim);text-decoration:none;padding:10px 24px;font-size:.85rem;font-weight:600;transition:.3s;white-space:nowrap;position:relative;z-index:2}.nav-links a:hover{color:var(--text-main)}.nav-links a.active{color:#fff}.mobile-nav-brand{color:var(--text-main);font-weight:700;font-size:1.1rem;letter-spacing:.5px;transition:all .4s ease}.mobile-nav-brand.active-brand{color:var(--accent);text-shadow:0 0 10px var(--accent-glow)}.mobile-menu-container{display:none;position:absolute;right:5%}.hamburger{display:flex;flex-direction:column;justify-content:space-between;width:26px;height:18px;background:transparent;border:none;cursor:pointer;z-index:1001;padding:0}.hamburger span{width:100%;height:2px;background-color:var(--text-main);border-radius:10px;transition:all .3s cubic-bezier(.16,1,.3,1)}.hamburger.active span:nth-child(1){transform:translateY(8px) rotate(45deg);background-color:var(--accent)}.hamburger.active span:nth-child(2){opacity:0;transform:translate(-10px)}.hamburger.active span:nth-child(3){transform:translateY(-8px) rotate(-45deg);background-color:var(--accent)}.nav-bubble{position:absolute;top:45px;right:0;width:210px;background:var(--card-bg);border:1px solid var(--accent);border-radius:18px;padding:10px;box-shadow:0 15px 40px #000000b3,0 0 20px var(--accent-glow);display:flex;flex-direction:column;gap:4px;opacity:0;transform:scale(.85) translateY(-20px);pointer-events:none;transition:all .4s cubic-bezier(.16,1,.3,1);transform-origin:top right}.nav-bubble.show{opacity:1;transform:scale(1) translateY(0);pointer-events:all}.nav-bubble a{color:var(--text-main);text-decoration:none;padding:14px 18px;border-radius:12222px;font-size:.95rem;font-weight:500;display:flex;align-items:center;gap:14px;transition:.2s}.nav-bubble a:hover,.nav-bubble a.active{background:#bc13fe26;color:var(--accent);padding-left:22px}.hero{min-height:100vh;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;padding:120px 10% 60px;gap:40px}.hero-text .label-container{font-family:JetBrains Mono,monospace;color:var(--accent);font-size:.9rem;margin-bottom:1rem;display:block;min-height:1.5rem;text-shadow:0 0 10px var(--accent-glow)}.name-gradient{font-size:clamp(2.5rem,8vw,5rem);font-weight:700;background:linear-gradient(to right,#cd94ff,var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.5rem;letter-spacing:-2px;line-height:1;transition:all 1.5s cubic-bezier(.16,1,.3,1)}.hero-text h1{font-size:clamp(1.8rem,5vw,2.5rem);line-height:1.2;margin-bottom:2rem;letter-spacing:-1px;display:flex;flex-wrap:wrap;gap:10px;transition:all 1.5s cubic-bezier(.16,1,.3,1)}.hero-text h1 span{display:inline-flex;gap:10px}.typing:after{content:"|";animation:blink 1s infinite;color:var(--accent);margin-left:4px}.hero-desc{max-width:500px;color:var(--text-dim);font-size:1rem;margin-bottom:2.5rem;min-height:4.5em;line-height:1.6;text-align:left}.hero-btns{display:flex;align-items:center;gap:20px;position:relative;min-height:60px}.btn-resume{display:inline-flex;align-items:center;text-decoration:none;background:transparent;border:2px solid var(--accent);height:53px;width:54px;border-radius:10px;overflow:hidden;transition:width .5s cubic-bezier(.16,1,.3,1),background .3s,transform .3s,box-shadow .3s;position:relative;box-shadow:0 0 10px #bc13fe33;flex-shrink:0;z-index:5}.resume-icon{min-width:50px;height:100%;display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:1.2rem;transition:color .3s}.resume-text{white-space:nowrap;opacity:0;transform:translate(10px);transition:all .4s ease;font-weight:700;color:var(--accent);padding-right:20px;font-size:.95rem}.btn-resume:hover{width:160px;background:var(--accent);box-shadow:0 0 25px var(--accent-glow);transform:translateY(-3px)}.btn-resume:hover .resume-icon,.btn-resume:hover .resume-text{color:#fff;opacity:1;transform:translate(0)}.btn{display:inline-block;padding:16px 30px;background:var(--accent);color:#fff;text-decoration:none;border-radius:10px;font-weight:700;cursor:pointer;border:1px solid var(--accent);box-shadow:0 0 10px #bc13fe33;font-size:.95rem;transition:all 1.5s cubic-bezier(.16,1,.3,1),background .3s,color .3s,box-shadow .3s,transform .3s;text-align:center;white-space:nowrap}.btn-primary:hover{background:transparent;color:var(--accent);box-shadow:0 0 25px var(--accent-glow);transform:translateY(-3px)!important}.btn-outline{background:transparent;border:1px solid var(--accent);color:var(--accent)}.btn-outline:hover{background:var(--accent);color:#fff;box-shadow:0 0 25px var(--accent-glow);transform:translateY(-3px)}.photo-container{display:flex;justify-content:center;align-items:center}.floating-container{animation:floatAnimation 4s ease-in-out infinite;display:flex;justify-content:center;align-items:center}.profile-box{width:100%;max-width:350px;aspect-ratio:1/1;border:2px solid var(--accent);border-radius:20px;background:var(--card-bg);position:relative;overflow:hidden;box-shadow:0 0 40px #bc13fe26;transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s ease,border-color .5s ease;cursor:pointer;z-index:1}.profile-box img{width:100%;height:100%;object-fit:cover;display:block}.profile-box:hover{transform:scale(1.1) translateY(-10px);border-color:#c13cff;box-shadow:0 20px 60px var(--accent-glow),0 0 30px var(--accent);z-index:10}#skills{padding:100px 10% 80px}.skills-grid{display:flex;flex-wrap:wrap;gap:40px;justify-content:center;margin-top:40px}.skill-category{width:100%;margin-bottom:20px}.typing-header{font-family:JetBrains Mono,monospace;color:var(--accent)!important;font-size:.9rem!important;margin-bottom:25px!important;text-align:center;min-height:2.2rem;text-shadow:0 0 10px var(--accent-glow)}.skill-item{display:flex;flex-direction:column;align-items:center;gap:20px;width:100px;opacity:0;transform:scale(.8);transition:all .6s cubic-bezier(.16,1,.3,1)}.skill-item.reveal-visible{opacity:1;transform:scale(1);animation:waveEffect 3s ease-in-out infinite}.skill-circle{width:70px;height:70px;background:var(--card-bg);border:1px solid rgba(188,19,254,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.8rem;color:var(--accent);transition:.3s;box-shadow:0 0 15px #bc13fe1a}.skill-circle img{width:38px;height:38px;object-fit:contain;pointer-events:none;transition:transform .3s ease,filter .3s ease;filter:invert(24%) sepia(91%) saturate(5458%) hue-rotate(278deg) brightness(97%) contrast(105%) drop-shadow(0 0 8px var(--accent-glow))}.skill-item:hover .skill-circle{border-color:var(--accent);box-shadow:0 0 20px var(--accent-glow);transform:scale(1.1)}.skill-item:hover .skill-circle img{transform:scale(1.1);filter:invert(24%) sepia(91%) saturate(5458%) hue-rotate(278deg) brightness(110%) contrast(110%) drop-shadow(0 0 15px var(--accent))}.skill-item span{font-size:.75rem;font-family:JetBrains Mono,monospace;color:var(--text-dim);text-align:center}.skill-percent{font-size:.75rem!important;font-family:JetBrains Mono,monospace;color:var(--accent)!important;font-weight:700;text-shadow:0 0 8px var(--accent-glow);margin-top:-5px}#work{padding:100px 10% 80px}.section-title{font-size:2rem;margin-bottom:2.5rem;display:flex;align-items:center;gap:15px}.section-title:after{content:"";height:1px;background:#bc13fe26;flex-grow:1}.project-card{background:var(--card-bg);border:1px solid rgba(188,19,254,.1);border-radius:24px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;opacity:0;transform:translateY(40px);transition:all .8s cubic-bezier(.16,1,.3,1)}.project-card.reveal-visible{opacity:1;transform:translateY(0)}.project-card:hover{border-color:var(--accent);box-shadow:0 20px 40px #0009,0 0 30px #bc13fe1a;transform:translateY(-5px)}.project-content{padding:3rem}.project-content h3{font-size:2rem;margin-bottom:1rem}.tech-stack{display:flex;flex-wrap:wrap;gap:10px;margin:1.5rem 0}.tech-stack small{background:#bc13fe1a;padding:5px 12px;border-radius:4px;font-family:JetBrains Mono,monospace;color:var(--accent);font-size:.75rem}.project-btns{display:flex;gap:15px}.project-image{background:linear-gradient(135deg,#1a0b2e,#0a0510);display:flex;align-items:center;justify-content:center;padding:20px}.wlinks-img-box{width:100%;height:100%;background:#0a0510;border:1px solid rgba(188,19,254,.2);border-radius:12px;overflow:hidden}.wlinks-img-box img{width:100%;height:100%;object-fit:cover;display:block}#learning{padding:60px 0 100px;scroll-margin-top:100px;position:relative;z-index:1}.learning-header{padding:0 10%}.marquee-container{display:flex;width:100%;margin-top:2rem;overflow:hidden;padding:20px 0}.marquee-container.paused .marquee-track{animation-play-state:paused}.marquee-track{display:flex;gap:50px;animation:scroll 30s linear infinite;width:max-content;padding-left:50px}.learning-card{width:320px;background:var(--card-bg);border:1px solid rgba(188,19,254,.1);border-radius:20px;overflow:hidden;transition:.3s;flex-shrink:0;cursor:pointer;position:relative;z-index:2}.learning-card:hover{border-color:var(--accent);transform:translateY(-10px);z-index:10;box-shadow:0 10px 30px #00000080}.cert-img-box{width:100%;height:180px;background:#07030a;border-bottom:1px solid rgba(188,19,254,.05);overflow:hidden}.cert-img-box img{width:100%;height:100%;object-fit:cover;opacity:.8;transition:.3s}.learning-card:hover .cert-img-box img{opacity:1}.learning-info{padding:20px}.learning-info h4{font-family:JetBrains Mono;font-size:.7rem;color:var(--accent);text-transform:uppercase;margin-bottom:6px}.learning-info p{font-weight:700;margin-bottom:8px;font-size:1rem}.learning-info small{color:var(--text-dim);line-height:1.4;display:block;font-size:.8rem}.dot-indicator{display:none;justify-content:center;gap:12px;margin-top:30px}.dot{width:10px;height:10px;background:#bc13fe33;border-radius:50%;transition:.4s ease}.dot.active{background:var(--accent);box-shadow:0 0 10px var(--accent),0 0 20px var(--accent-glow);transform:scale(1.3)}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0a0510f2;z-index:2000;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;animation:fadeIn .3s ease;padding:20px}.modal-overlay.modal-fade-out{animation:fadeOut .3s ease forwards}.modal-content.modal-zoom-out{animation:zoomOut .3s cubic-bezier(.16,1,.3,1) forwards}.modal-content{position:relative;max-width:600px;width:100%;max-height:95vh;background:var(--card-bg);padding:20px;border-radius:20px;border:1px solid var(--accent);box-shadow:0 0 50px var(--accent-glow);cursor:default;animation:zoomIn .4s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column}.modal-image-container{width:100%;flex-grow:1;display:flex;justify-content:center;align-items:center;overflow:hidden;background:#000;border-radius:12px}.modal-content img{max-width:100%;max-height:100vh;width:auto;height:auto;object-fit:contain;display:block}.modal-close{position:absolute;top:-15px;right:-15px;background:var(--accent);border:none;color:#fff;width:35px;height:35px;border-radius:50%;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 0 15px var(--accent-glow);z-index:2010;transition:background .3s ease,color .3s ease,transform .3s ease}.modal-close:hover{background:#fff;color:#d300f4;transform:rotate(90deg)}.modal-info{padding-top:20px;text-align:center}.modal-info h3{color:var(--text-main);margin-bottom:5px;font-size:1.2rem}.modal-info p{color:var(--accent);font-family:JetBrains Mono;font-size:.85rem}#contact{padding:100px 10% 60px;background:#07030a;border-top:1px solid rgba(188,19,254,.1)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.contact-info h2{font-size:2.5rem;margin-bottom:1rem;letter-spacing:-1px}.footer-highlight{color:var(--accent)}.contact-item{margin-bottom:1.5rem}.contact-item h4{color:var(--accent);font-family:JetBrains Mono;margin-bottom:5px;font-size:.75rem;text-transform:uppercase}.contact-item a{color:var(--text-main);text-decoration:none;font-size:1.1rem;transition:color .3s ease;word-break:break-all;display:inline-flex;align-items:center;gap:8px}.contact-item a:hover{color:var(--accent);text-shadow:0 0 10px var(--accent-glow)}.back-to-top{position:fixed;bottom:30px;right:30px;width:50px;height:50px;background:var(--accent);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none;z-index:1000;box-shadow:0 0 20px var(--accent-glow);transition:all .4s cubic-bezier(.16,1,.3,1);cursor:pointer;border:none;opacity:0;transform:scale(.5);pointer-events:none}.back-to-top.visible{opacity:1;transform:scale(1);pointer-events:all}.back-to-top:hover{transform:scale(1.1) translateY(-5px);box-shadow:0 0 30px var(--accent-glow)}*{scrollbar-width:thin;scrollbar-color:var(--accent) var(--bg)}@media(min-width:969px){.mobile-only{display:none!important}.project-btns .btn-outline{min-width:160px}}@media(min-width:769px){::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:linear-gradient(to bottom,#6600a1 0%,var(--accent) 50%,#9f34a7 100%);border-radius:20px;border:3px solid var(--bg)}}@media(max-width:968px){.aurora-left,.aurora-right{position:absolute;height:100vh;width:100vw;z-index:-1}nav{padding:1.2rem 5%;justify-content:space-between!important;background:#0a051066;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(188,19,254,.1);left:0;right:0}.desktop-only{display:none!important}.mobile-menu-container,.mobile-only{display:block!important}.hero{grid-template-columns:1fr;text-align:center;padding-top:140px;gap:60px;position:relative;width:100%;box-sizing:border-box}.hero-text h1{justify-content:center}.hero-text p{margin-left:auto;margin-right:auto}.hero-btns{justify-content:center;gap:15px;width:100%;max-width:100%;margin:0 auto;position:relative;display:flex;flex-direction:row}.btn-primary{flex:1;padding:17.5px 20px;font-size:.85rem;transition:all .5s cubic-bezier(.16,1,.3,1)}.btn-resume{flex-shrink:0;transition:width .5s cubic-bezier(.16,1,.3,1),transform .3s;margin-left:0}.btn-resume:hover{width:160px}.profile-box{width:280px;height:280px;margin:0 auto}.project-card{grid-template-columns:1fr;width:100%;margin:15px auto!important;border-radius:20px}.project-content{padding:1.5rem;text-align:left}.project-content h3{font-size:1.5rem}.project-content p{font-size:.85rem;line-height:1.4;color:var(--text-dim)}.project-image{order:-1;height:180px;padding:10px}.wlinks-img-box{border-radius:12px;background:#11081d;display:flex;align-items:center;justify-content:center}.project-btns{flex-direction:column;width:100%;gap:10px;margin-top:15px}.project-btns .btn{width:100%;display:block;padding:14px 0;border-radius:10px;font-size:.85rem}.contact-grid{grid-template-columns:1fr}.contact-info h2{font-size:2rem}}@media(max-width:768px){.marquee-track{animation:none!important;overflow-x:auto;padding:20px;gap:20px;width:100%;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none}.marquee-track::-webkit-scrollbar{display:none}.learning-card{scroll-snap-align:center;width:80vw;flex-shrink:0}.video-play-btn{width:40px!important;height:40px!important;font-size:.9rem!important}.replay-btn{width:40px!important;height:40px!important}.marquee-clone{display:none!important}.dot-indicator.phone-only-dots{display:flex}.hero-desc{text-align:center!important}.nav-bubble a{border-radius:8px!important}}@media(max-width:480px){.name-gradient{font-size:3rem}.project-content p{font-size:.8rem}.hero-btns{gap:10px;flex-wrap:nowrap}.btn-primary{font-size:.85rem;padding:17.5px 10px}.btn-resume:hover{width:150px}}section{position:relative;z-index:10}*{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:4px;box-shadow:0 0 15px var(--accent-glow)}.btn:active,.nav-links a:active{transform:scale(.95);transition:transform .1s}.video-modal-content{max-width:800px;padding:15px}.modal-video-container{width:100%;position:relative;background:#000;border-radius:12px;overflow:hidden;cursor:pointer;display:flex;align-items:center;justify-content:center}.modal-video-container video{width:100%;height:auto;display:block}.video-play-btn{position:absolute;width:70px;height:70px;background:var(--accent);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;box-shadow:0 0 30px var(--accent-glow);z-index:5;pointer-events:none;transition:all .3s cubic-bezier(.16,1,.3,1);opacity:1}.video-play-btn.hoverable{pointer-events:all;cursor:pointer}.video-play-btn.hoverable:hover{background:#fff;color:#d300f4;transform:scale(1.1)}.video-play-btn.fade-out{opacity:0;transform:scale(.8);pointer-events:none}.replay-btn{pointer-events:all;cursor:pointer}.replay-btn:hover{background:#fff;color:var(--accent);transform:scale(1.1) rotate(45deg)}
