:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{margin:0;padding:0;box-sizing:border-box}:root{--bg-color: #0a0a0a;--accent-color: #646cff;--glass-bg: rgba(255, 255, 255, .03);--glass-border: 1px solid rgba(255, 255, 255, .1);--glass-blur: blur(12px);--max-content-width: 1300px}html,body{width:100%;overflow-x:hidden;background-color:var(--bg-color);display:flex;flex-direction:column;align-items:center}.home-container{min-height:100vh;min-height:100dvh;min-width:320px;width:100%;color:#fff;position:relative;display:flex;flex-direction:column;align-items:center;padding:2rem;padding-top:max(2rem,env(safe-area-inset-top));padding-right:max(2rem,env(safe-area-inset-right));padding-bottom:max(2rem,env(safe-area-inset-bottom));padding-left:max(2rem,env(safe-area-inset-left))}.content-wrapper{width:100%;max-width:var(--max-content-width);display:flex;flex-direction:column;align-items:center;padding:clamp(3rem,10vh,120px) 1rem 4rem 1rem;z-index:1}@media(min-width:600px){.content-wrapper{padding:120px 2rem 4rem}}.hero-section{text-align:center;width:100%;display:flex;flex-direction:column;align-items:center;padding:clamp(2.5rem,15vw,10rem) 1rem}.reveal-text{font-size:clamp(2rem,8vw,5.5rem);font-weight:800;line-height:1.1;letter-spacing:-.05em;width:100%}.reveal-text span{color:var(--accent-color);text-shadow:0 0 30px rgba(100,108,255,.3)}.about-bento-section{width:100%;margin-top:4rem;scroll-margin-top:6.5rem;padding-bottom:5rem}.bento-grid{display:grid;width:100%;gap:1rem;grid-template-columns:1fr;grid-auto-rows:auto}@media(min-width:780px){.bento-grid{gap:1.5rem;grid-template-columns:repeat(2,1fr)}}@media(min-width:1100px){.bento-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(240px,auto)}.tall{grid-row:span 2}.wide{grid-column:span 2;height:auto}}.grid-item{background:var(--glass-bg);border:var(--glass-border);border-radius:20px;padding:1.5rem;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);display:flex;flex-direction:column;justify-content:space-evenly}@media(min-width:600px){.grid-item{border-radius:28px;padding:2rem}}.grid-item.tall{justify-content:flex-start;gap:1.5rem}.grid-item.wide{height:auto!important;min-height:200px;padding:1.5rem}@media(min-width:600px){.grid-item.wide{min-height:240px;padding:2rem}}.grid-item.small.highlight{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1.5rem}@media(min-width:600px){.grid-item.small.highlight{padding:2rem}}.cursor-glow{position:fixed;width:600px;height:600px;background:radial-gradient(circle,rgba(100,108,255,.12) 0%,transparent 70%);border-radius:50%;pointer-events:none;transform:translate(-50%,-50%);z-index:0;display:none}@media(hover:hover){.cursor-glow{display:block}}.experience-section{scroll-margin-top:6.5rem}.contact-section{scroll-margin-top:6.5rem;width:100%;max-width:860px;min-width:0;margin-top:5rem;margin-bottom:2rem;padding:0 .5rem;display:flex;flex-direction:column;align-items:center;z-index:1}@media(min-width:780px){.contact-section{padding:0}}.section-title{font-size:clamp(1.75rem,5vw,3rem);margin-bottom:1rem;font-weight:800}.section-title span{color:var(--accent-color)}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .8s cubic-bezier(.21,1.02,.73,1),transform .8s cubic-bezier(.21,1.02,.73,1);will-change:transform,opacity}.animate-on-scroll.is-visible{opacity:1;transform:translateY(0)}.animate-on-scroll:not(.is-visible){opacity:0;transform:translateY(20px)}@media(prefers-reduced-motion:reduce){.animate-on-scroll{transition:none;opacity:1;transform:none}}.tech-icons-container{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:flex-start}@media(min-width:600px){.tech-icons-container{gap:1.5rem}}.tech-icon-wrapper{font-size:1.5rem;color:#ffffffb3;cursor:help;display:flex;align-items:center;justify-content:center;transition:transform .3s ease,filter .3s ease}.tech-icon-wrapper i{font-size:1.6rem;display:inline-flex;align-items:center;justify-content:center}@media(min-width:600px){.tech-icon-wrapper{font-size:1.8rem}.tech-icon-wrapper i{font-size:2rem}}@media(hover:hover){.tech-icon-wrapper:hover{color:var(--accent-color);transform:translateY(-5px) scale(1.1);filter:drop-shadow(0 0 8px var(--accent-color))}}.stack-categories{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem;width:100%}@media(min-width:600px){.stack-categories{gap:1rem}}.stack-row{display:flex;align-items:center;gap:1rem;padding:.8rem;background:#ffffff05;border-radius:16px;transition:background .3s ease;flex-wrap:wrap}@media(min-width:600px){.stack-row{gap:2rem;flex-wrap:nowrap}}.stack-row:hover{background:#ffffff0d}.stack-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-color);font-weight:700;min-width:70px;opacity:.8}@media(min-width:600px){.stack-label{font-size:.75rem;min-width:100px}}.edu-content{display:flex;flex-direction:column;gap:1.2rem;text-align:left}.school-name{font-size:1.15rem;color:var(--accent-color);font-weight:700;margin-bottom:.3rem}@media(min-width:600px){.school-name{font-size:1.25rem}}.edu-degree{font-size:1rem;font-weight:600;color:#fff;line-height:1.4}.edu-meta{display:flex;flex-direction:column;gap:.2rem}.edu-date{font-size:.85rem;color:#ffffff80;font-weight:500}.edu-location{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:#ffffff80}.edu-highlights{list-style:none;margin-top:.1rem}.edu-highlights li{font-size:.85rem;color:#fff9;margin-bottom:.6rem;padding-left:1.2rem;position:relative;line-height:1.5}.edu-highlights li:before{content:"→";position:absolute;left:0;color:var(--accent-color);font-weight:700;font-size:.8rem}.personal-page{margin-top:4rem;display:flex;flex-direction:column;align-items:center;color:#ffffff80;font-size:1rem;text-align:center;padding:0 1rem}@media(min-width:600px){.personal-page{font-size:1.1rem;padding:0}}.certifications-grid{display:flex;flex-wrap:nowrap;gap:1rem;margin-top:2rem;width:100%}.cert-badge{width:100%;height:100%;object-fit:contain}.cert-card{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;padding:.5rem;height:160px;border-radius:18px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);text-decoration:none;color:inherit;transition:transform .25s ease,border-color .25s ease,background .25s ease}@media(max-width:600px){.certifications-grid{flex-wrap:wrap}.cert-card{flex:1 1 100%}}.navbar{position:fixed;top:0;left:0;width:100%;height:80px;background:#0a0a0acc;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);z-index:1000;border-bottom:1px solid rgba(255,255,255,.05);display:flex;justify-content:center;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);padding-top:env(safe-area-inset-top);height:calc(80px + env(safe-area-inset-top))}.nav-container{width:100%;max-width:1200px;padding:0 1rem;display:flex;justify-content:space-between;align-items:center;padding-top:env(safe-area-inset-top)}@media(min-width:600px){.nav-container{padding:0 2rem}}.nav-logo{font-size:1.4rem;font-weight:800;letter-spacing:-1px;flex-shrink:0}@media(min-width:600px){.nav-logo{font-size:1.5rem}}.nav-logo span{color:var(--accent-color)}.nav-links{display:flex;gap:2.5rem;list-style:none;align-items:center}.nav-links a{text-decoration:none;color:#ffffffb3;font-weight:500;transition:color .3s}.nav-links a:hover{color:#fff}.nav-cta{background:var(--accent-color);color:#fff!important;padding:.6rem 1.2rem;border-radius:50px;transition:transform .2s ease,background .3s ease}@media(hover:hover){.nav-cta:hover{transform:scale(1.05)}}.nav-mode-toggle{display:flex;align-items:center;margin-left:.5rem}.toggle-track.toggle-small{padding:3px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:999px;display:flex}.toggle-track.toggle-small .toggle-btn{padding:5px 14px;font-size:.75rem;font-weight:600;border-radius:999px;border:none;cursor:pointer;background:transparent;color:#ffffff73;transition:all .25s ease;min-height:44px;display:flex;align-items:center}.toggle-track.toggle-small .toggle-btn.active{background:var(--accent-color);color:#fff;box-shadow:0 0 16px #646cff59}@media(hover:hover){.toggle-track.toggle-small .toggle-btn:hover:not(.active){color:#fffc}}@media(max-width:1000px){.nav-toggle{display:flex;flex-direction:column;gap:5px;cursor:pointer;min-width:44px;min-height:44px;justify-content:center;align-items:center}.nav-toggle span{width:25px;height:2px;background:#fff;transition:.3s;display:block}.nav-links{position:fixed;top:calc(80px + env(safe-area-inset-top));left:0;width:100%;height:0;overflow:hidden;flex-direction:column;background:#0a0a0af7;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);transition:height .4s ease;gap:2rem;padding-top:0;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.nav-links.active{height:calc(100dvh - 80px - env(safe-area-inset-top));padding-top:3rem;padding-bottom:max(2rem,env(safe-area-inset-bottom));overflow-y:auto;overflow-x:hidden}.nav-cta{width:80%;text-align:center;padding:.9rem 1.2rem;font-size:1rem;border-radius:9px;display:block;margin:0 auto;min-height:44px;display:flex;align-items:center;justify-content:center}}.loader-container{display:flex;align-items:center;font-family:Inter,Poppins,sans-serif;font-size:clamp(1.2rem,3vw,2rem);padding-top:1rem;font-weight:700;color:#888;gap:8px}.static-text{white-space:nowrap}.scroller{height:1.2em;line-height:1.2em;overflow:hidden;position:relative}.word-list{list-style:none;white-space:nowrap;padding:0;margin:0;animation:roll-up 12s cubic-bezier(.85,0,.15,1) infinite}.word-item{display:block;color:var(--accent-color, #646cff);white-space:nowrap;text-shadow:0 10px 20px rgba(100,108,255,.2);height:1.2em}@keyframes roll-up{0%,12%{transform:translateY(0)}16%,28%{transform:translateY(-1.2em)}32%,44%{transform:translateY(-2.4em)}48%,60%{transform:translateY(-3.6em)}64%,76%{transform:translateY(-4.8em)}80%,92%{transform:translateY(-6em)}to{transform:translateY(-7.2em)}}.scroller:before,.scroller:after{content:"";position:absolute;left:0;right:0;height:25%;z-index:2;pointer-events:none}.scroller:before{top:0;background:linear-gradient(to bottom,var(--bg-color, #0a0a0a),transparent)}.scroller:after{bottom:0;background:linear-gradient(to top,var(--bg-color, #0a0a0a),transparent)}.footer{width:100%;padding-bottom:1rem;margin-top:.5rem;display:flex;justify-content:center;align-items:center;opacity:0;transform:translateY(20px);transition:opacity .8s cubic-bezier(.21,1.02,.73,1),transform .8s cubic-bezier(.21,1.02,.73,1)}.footer-icons a{color:#6e61e6ea;display:flex;align-items:center;justify-content:center;width:44px;height:44px;transition:all .4s cubic-bezier(.23,1,.32,1)}.footer.is-visible{opacity:1;transform:translateY(0)}.footer-icons a:hover{color:var(--accent-color);transform:translateY(-5px)}.footer-content{width:100%;max-width:var(--max-content-width, 1300px);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.08);padding-top:2rem;gap:1.5rem}.footer-content p{color:#ffffff80;font-size:.9rem;white-space:nowrap}.footer-icons{display:flex;gap:1.5rem}@media(max-width:600px){.footer-content{flex-direction:column-reverse;justify-content:center;text-align:center}}.experience-section{width:100%;max-width:900px}.timeline-container{position:relative;margin-top:2rem;padding-left:3rem}.timeline-container:before{content:"";position:absolute;left:0;top:0;width:2px;height:0;background:linear-gradient(to bottom,var(--accent-color),transparent);transition:1.5s ease-out;opacity:.3}.experience-section.is-visible .timeline-container:before{height:100%}.timeline-item{position:relative;margin-bottom:3rem;opacity:0;transform:translate(-20px);transition:all .6s cubic-bezier(.23,1,.32,1)}.timeline-item.is-visible{opacity:1;transform:translate(0)}.timeline-dot{position:absolute;left:-3.45rem;top:10px;width:14px;height:14px;background:var(--company-color, var(--accent-color));border-radius:50%;z-index:2;box-shadow:0 0 15px var(--company-color, var(--accent-color))}.timeline-content{background:var(--glass-bg);border:var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);padding:2.5rem;border-radius:24px;transition:all .4s cubic-bezier(.23,1,.32,1)}.timeline-content:hover{background:#ffffff0a;border-color:var(--company-color, var(--accent-color));transform:translate(10px)}.timeline-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;gap:1.5rem}.timeline-content h3{font-size:1.6rem;margin:0;color:#fff}.company-name{font-size:1.1rem;font-weight:600;color:var(--company-color, var(--accent-color));margin-top:.3rem;display:block}.header-meta{display:flex;flex-direction:column;align-items:flex-end;text-align:right;gap:.5rem;min-width:fit-content}.timeline-date{color:var(--company-color, var(--accent-color));font-weight:700;font-size:.8rem;letter-spacing:.1em;transition:all .3s ease;opacity:.9}.timeline-location{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:#ffffff80;background:#ffffff0d;padding:4px 12px;border-radius:100px}.timeline-desc{list-style:none;padding:0;margin-top:1rem}.timeline-desc li{position:relative;color:#fff9;font-size:.95rem;line-height:1.6;margin-bottom:.8rem;padding-left:1.5rem}.timeline-desc li:before{content:"→";position:absolute;left:0;color:var(--company-color, var(--accent-color));font-weight:700;opacity:.8;transition:transform .3s ease}.timeline-item:hover .timeline-desc li:before{transform:translate(4px)}.experience-tools{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.08)}.tool-pill{font-size:.75rem;font-weight:500;color:var(--company-color, var(--accent-color));background:#ffffff08;padding:6px 14px;border-radius:8px;border:1px solid rgba(255,255,255,.05);transition:all .3s ease}.timeline-content:hover .tool-pill{background:#ffffff0f;border-color:var(--company-color, var(--accent-color))}@media(max-width:768px){.timeline-header{flex-direction:column;gap:.8rem}.header-meta{align-items:flex-start;text-align:left}}@media(max-width:600px){.experience-section{margin:.5rem auto;transition-behavior:inherit}.timeline-container{padding-left:1.5rem}.timeline-dot{left:-1.9rem;width:12px;height:12px}.timeline-content{padding:1.5rem}.timeline-content h3{font-size:1.3rem}.timeline-desc li{font-size:.9rem;padding-left:1.2rem}}.resume-download-wrapper{display:flex;justify-content:center;margin-top:4rem;padding-bottom:2rem}.resume-btn{display:flex;align-items:center;gap:.8rem;padding:1rem 2.2rem;background:var(--glass-bg);border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:#fff;text-decoration:none;border-radius:12px;font-weight:600;font-size:.95rem;transition:all .4s cubic-bezier(.23,1,.32,1);box-shadow:0 4px 15px #0000001a}.resume-btn svg{font-size:1.2rem;color:var(--accent-color);transition:transform .3s ease}.resume-btn:hover{border-color:var(--accent-color);background:#ffffff0d;transform:translateY(-5px);box-shadow:0 8px 25px rgba(var(--accent-rgb),.2)}.resume-btn:hover svg{transform:translateY(2px)}@media(max-width:600px){.resume-download-wrapper{margin-top:2.5rem}.resume-btn{width:100%;justify-content:center}}.projects-section{padding:3rem 1.5rem;max-width:1200px;width:100%}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2.5rem;margin-top:3rem}.project-card-container{height:400px;perspective:1000px}.project-card{position:relative;width:100%;height:100%;transition:transform .8s cubic-bezier(.2,.8,.2,1);transform-style:preserve-3d;cursor:pointer}.project-card-container:hover .project-card{transform:rotateY(180deg)}.card-front,.card-back{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:24px;border:var(--glass-border);overflow:hidden}.card-front{background:var(--glass-bg)}.project-img{width:100%;height:100%;object-fit:cover;filter:brightness(.7);transition:.3s}.card-overlay{position:absolute;bottom:2rem;left:2rem}.category-pill{background:var(--accent-color);padding:4px 12px;border-radius:100px;font-size:.75rem;font-weight:700}.card-back{background:#141414f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transform:rotateY(180deg);display:flex;flex-direction:column;justify-content:center;padding:2rem;text-align:center}.project-tech{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin:1.5rem 0}.project-tech span{font-size:.7rem;border:1px solid var(--accent-color);padding:3px 10px;border-radius:8px;color:var(--accent-color)}.project-links{display:flex;justify-content:center;gap:1.5rem}.project-links a{color:#fff;text-decoration:none;display:flex;align-items:center;gap:.5rem;font-size:.9rem;transition:.3s}.project-links a:hover{color:var(--accent-color)}.category-container{display:flex;flex-wrap:wrap;gap:.4rem}
