@import "https://fonts.googleapis.com/css2?family=NTR&display=swap";.navbar{background-color:var(--navy);z-index:100;width:100%;height:80px;transition:all .3s ease-in-out;position:fixed;top:0}.navbar.scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#0a192fd9;height:70px;box-shadow:0 10px 30px -10px #020c1bb3}.nav-container{justify-content:space-between;align-items:center;height:100%;padding:0 40px;display:flex}.logo a{color:var(--green-bright);font-size:24px;font-weight:700}.desktop-nav{align-items:center;gap:30px;display:flex}.nav-links{gap:20px;display:flex}.nav-links a{color:var(--lightest-slate);font-family:Menlo,Consolas,Monaco,Courier New,monospace;font-size:14px}.nav-links a:hover{color:var(--green-bright)}.social-links{gap:15px;margin-left:20px;display:flex}.social-links a{color:var(--light-slate)}.social-links a:hover{color:var(--green-bright);transform:translateY(-2px)}.mobile-menu-btn{color:var(--green-bright);cursor:pointer;z-index:1002;touch-action:manipulation;background:0 0;border:none;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:10px;display:none}.mobile-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:998;background:#020c1bb3;position:fixed;inset:0}.mobile-menu{background-color:var(--light-navy);width:min(100vw,340px);height:100dvh;padding:90px 24px 30px;padding-bottom:max(30px, env(safe-area-inset-bottom));z-index:999;-webkit-overflow-scrolling:touch;flex-direction:column;justify-content:space-between;align-items:center;transition:transform .3s cubic-bezier(.16,1,.3,1);display:none;position:fixed;top:0;right:0;overflow-y:auto;transform:translate(100%);box-shadow:-10px 0 30px -15px #020c1bcc}.mobile-menu.open{transform:translate(0)}.mobile-nav-links{flex-direction:column;align-items:center;gap:24px;width:100%;display:flex}.mobile-nav-links a{color:var(--lightest-slate);min-height:44px;padding:8px 16px;font-family:Menlo,Consolas,Monaco,Courier New,monospace;font-size:20px;line-height:28px;transition:color .2s,transform .2s;display:inline-block}.mobile-nav-links a:hover,.mobile-nav-links a:active{color:var(--green-bright);transform:translate(4px)}.mobile-utilities{flex-direction:column;gap:12px;width:100%;max-width:240px;margin:20px 0;display:flex}.mobile-utility-btn{color:var(--lightest-slate);border:1px solid var(--lightest-navy);cursor:pointer;touch-action:manipulation;background:#0a192f99;border-radius:6px;justify-content:center;align-items:center;gap:10px;min-height:44px;padding:10px 16px;font-family:Menlo,Consolas,Monaco,Courier New,monospace;font-size:13px;transition:all .2s;display:flex}.mobile-utility-btn:hover,.mobile-utility-btn:active{border-color:var(--green-bright);color:var(--green-bright);background:var(--green-tint)}.mobile-social-links{align-items:center;gap:24px;display:flex}.mobile-social-links a{color:var(--light-slate);border:1px solid var(--lightest-navy);background:#0a192f66;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:all .2s;display:flex}.mobile-social-links a:hover,.mobile-social-links a:active{color:var(--green-bright);border-color:var(--green-bright)}@media (width<=768px){.navbar{height:60px}.navbar.scrolled{height:54px}.nav-container{padding:0 20px;padding-left:max(20px, env(safe-area-inset-left));padding-right:max(20px, env(safe-area-inset-right))}.logo a{font-size:20px}.desktop-nav{display:none}.mobile-menu-btn{min-width:40px;min-height:40px;padding:6px;display:flex}.mobile-menu{padding-top:75px;display:flex}.mobile-nav-links{gap:18px}.mobile-nav-links a{min-height:38px;padding:6px 14px;font-size:17px;line-height:24px}}.sidebar-nav{z-index:50;position:fixed;top:50%;left:40px;transform:translateY(-50%)}.sidebar-nav ul{flex-direction:column;gap:20px;display:flex}.sidebar-nav a{color:var(--slate);letter-spacing:.05em;writing-mode:vertical-rl;text-orientation:mixed;font-family:Menlo,Consolas,Monaco,Courier New,monospace;font-size:13px;transition:all .2s ease-in-out;transform:rotate(180deg)}.sidebar-nav a:hover{color:var(--green-bright);transform:rotate(180deg)translateY(5px)}.fade-in-nav{opacity:0;animation:.5s ease-out forwards fadeInNav}@keyframes fadeInNav{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (width<=1080px){.sidebar-nav{display:none}}.live-iot-widget{background:var(--light-navy,#112240);border:1px solid var(--lightest-navy,#233554);font-family:var(--font-mono,"Fira Code", monospace);border-radius:20px;align-items:center;gap:8px;margin-top:15px;padding:6px 12px;font-size:12px;transition:all .3s;display:inline-flex}.live-iot-widget.offline{opacity:.6}.iot-indicator{justify-content:center;align-items:center;display:flex}.pulse-active{color:var(--green,#64ffda);animation:2s infinite pulse-icon}.pulse-stopped{color:var(--slate,#8892b0)}.iot-content{align-items:center;gap:6px;display:flex}.iot-label{color:var(--light-slate,#a8b2d1);align-items:center;display:flex}.iot-value{color:var(--green,#64ffda);font-weight:600}.offline-text{color:var(--slate,#8892b0);font-style:italic;font-weight:400}.iot-time{color:var(--slate,#8892b0);font-size:11px}@keyframes pulse-icon{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@media (width<=480px){.live-iot-widget{flex-wrap:wrap;justify-content:center;padding:5px 10px;font-size:11px}}.live-skill-chart-container{border:1px solid var(--lightest-navy);background:#11224066;border-radius:8px;flex-direction:column;align-items:center;width:100%;max-width:360px;margin:24px auto 0;padding:14px;display:flex}.chart-title{font-family:var(--font-mono,monospace);color:var(--green-bright);z-index:10;margin-bottom:-6px;font-size:13px}.chart-wrapper{width:100%}.custom-tooltip{background:var(--light-navy);border:1px solid var(--green-bright);border-radius:4px;padding:8px 12px;box-shadow:0 5px 15px #020c1bb3}.tooltip-label{color:var(--green-bright);font-family:var(--font-mono,monospace);margin:0 0 4px;font-size:12px;font-weight:700}.tooltip-value{color:var(--light-slate);margin:0;font-size:11px}.chart-caption{font-family:var(--font-mono,monospace);color:var(--slate);text-align:center;margin-top:6px;font-size:10.5px}.skill-chart-loading{font-family:var(--font-mono,monospace);color:var(--slate);text-align:center;border:1px dashed var(--lightest-navy);background:#11224066;border-radius:8px;margin-top:24px;padding:24px;font-size:12px}@media (width<=768px){.live-skill-chart-container{max-width:280px;margin-top:18px;padding:10px 4px}.chart-title{font-size:12px}.chart-caption{font-size:9.5px}}@media (width<=480px){.live-skill-chart-container{max-width:240px;margin-top:14px;padding:8px 2px}.chart-title{font-size:11px}}.home-page{padding-bottom:60px}.hero-section{justify-content:space-between;align-items:center;min-height:85vh;padding:30px 0 20px;display:flex;position:relative}.hero-content{z-index:1;flex:1.2;max-width:580px;position:relative}.hero-greeting{color:var(--green-bright);font-family:var(--font-mono,monospace);letter-spacing:.5px;margin-bottom:16px;font-size:15px;font-weight:400;line-height:22px}.hero-name{color:var(--lightest-slate);font-family:var(--font-sans);margin-bottom:6px;font-size:clamp(38px,6vw,68px);font-weight:700;line-height:1.1}.hero-subtitle{color:var(--slate);font-family:var(--font-sans);min-height:48px;margin-top:4px;margin-bottom:24px;font-size:clamp(24px,4.5vw,48px);font-weight:700;line-height:1.15}.hero-bio{color:var(--slate);font-family:var(--font-sans);max-width:520px;margin-bottom:34px;font-size:17px;line-height:25px}.hero-btn{border-radius:4px;padding:.8rem 1.6rem;font-size:14.5px}.hero-visual{z-index:1;flex:.9;justify-content:center;align-items:center;max-width:360px;display:flex;position:relative}@media (width<=900px){.hero-section{flex-direction:column;justify-content:center;min-height:auto;padding:35px 0 25px;position:relative}.hero-content{z-index:1;text-align:center;width:100%;max-width:100%;margin:0 auto;position:relative}.hero-bio{max-width:100%;margin:0 auto 24px;font-size:15px;line-height:22px}.hero-visual{z-index:1;width:100%;max-width:270px;margin-top:26px;position:relative}}@media (width<=480px){.hero-section{padding:20px 0 16px}.hero-greeting{margin-bottom:10px;font-size:13.5px;line-height:19px}.hero-name{margin-bottom:4px;font-size:clamp(28px,8vw,36px)}.hero-subtitle{min-height:30px;margin-bottom:14px;font-size:clamp(17px,5.2vw,22px)}.hero-bio{margin-bottom:20px;font-size:13.5px;line-height:19px}.hero-btn{padding:.6rem 1.2rem;font-size:13px}.hero-visual{max-width:220px;margin-top:20px}}.about-content{grid-template-columns:3fr 2fr;align-items:start;gap:36px;display:grid}.about-text p{color:var(--slate);font-family:var(--font-sans);margin-bottom:16px;font-size:17px;line-height:25px}.skills-list{flex-wrap:wrap;gap:8px;margin-top:22px;display:flex}.skill-pill{background-color:var(--light-navy);color:var(--green-bright);font-family:var(--font-mono);border:1px solid var(--lightest-navy);border-radius:14px;padding:4px 10px;font-size:11.5px;transition:all .2s;display:inline-block}.skill-pill:hover{background-color:var(--green-tint);transform:translateY(-2px)}.about-image-wrapper{width:100%;max-width:280px;margin:0 auto;position:relative}.about-image-placeholder{background-color:var(--green-bright);border-radius:6px;width:100%;position:relative}.about-image{mix-blend-mode:multiply;filter:grayscale()contrast();border-radius:6px;width:100%;transition:all .25s cubic-bezier(.645,.045,.355,1);display:block}.about-image-placeholder:hover .about-image{mix-blend-mode:normal;filter:none}.about-image-placeholder:after{content:"";border:2px solid var(--green-bright);z-index:-1;border-radius:6px;width:100%;height:100%;transition:all .25s cubic-bezier(.645,.045,.355,1);display:block;position:absolute;top:14px;left:14px}.about-image-placeholder:hover:after{top:10px;left:10px}@media (width<=768px){.about-content{grid-template-columns:1fr;gap:26px}.about-text p{margin-bottom:14px;font-size:15px;line-height:22px}.skills-list{gap:6px;margin-top:16px}.skill-pill{border-radius:12px;padding:3px 8.5px;font-size:11px}.about-image-wrapper{max-width:240px}.about-image-placeholder{max-width:220px;margin:0 auto}}@media (width<=480px){.about-content{gap:20px}.about-text p{font-size:13.5px;line-height:19px}.skills-list{gap:5px;margin-top:12px}.skill-pill{padding:2.5px 7px;font-size:10px}.about-image-wrapper{max-width:190px}.about-image-placeholder{max-width:180px}.about-image-placeholder:after{top:9px;left:9px}}.job-card{margin-bottom:30px}.job-header{margin-bottom:10px}.job-title{color:var(--lightest-slate);font-family:var(--font-sans);font-size:20px;font-weight:700}.job-date{color:var(--slate);font-family:var(--font-mono);margin-top:3px;font-size:12px;display:block}.job-highlights{list-style:none}.job-highlights li{color:var(--slate);font-family:var(--font-sans);margin-bottom:8px;padding-left:24px;font-size:15.5px;line-height:1.5;position:relative}.job-highlights li:before{content:"▹";color:var(--green-bright);font-size:17px;line-height:19px;position:absolute;left:0}@media (width<=768px){.job-card{margin-bottom:24px}.job-title{font-size:17.5px}.job-date{font-size:11.5px}.job-highlights li{margin-bottom:7px;padding-left:18px;font-size:13.5px;line-height:1.45}.job-highlights li:before{font-size:15px;line-height:17px}}@media (width<=480px){.job-card{margin-bottom:18px}.job-title{font-size:16px}.job-date{font-size:11px}.job-highlights li{margin-bottom:6px;padding-left:16px;font-size:12.5px;line-height:1.4}.job-highlights li:before{font-size:13px;line-height:15px}}.slider-container{align-items:center;margin-bottom:40px;display:flex;position:relative}.slider-btn{z-index:10;background-color:var(--light-navy);color:var(--green-bright);border:1px solid var(--green-bright);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;transition:all .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 4px 6px #020c1b80}.slider-btn:hover{background-color:var(--green-tint);transform:translateY(-50%)scale(1.08)}.slider-btn.left{left:-16px}.slider-btn.right{right:-16px}.projects-slider{scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;gap:16px;padding-bottom:16px;display:flex;overflow-x:auto}.projects-slider::-webkit-scrollbar{display:none}.project-card{background-color:var(--light-navy);scroll-snap-align:start;border:1px solid #0000;border-radius:12px;flex-direction:column;flex:none;min-width:290px;max-width:350px;transition:all .25s cubic-bezier(.645,.045,.355,1);display:flex;overflow:hidden}.project-card:hover{border-color:var(--green-tint);transform:translateY(-4px);box-shadow:0 10px 30px -15px #020c1bb3}.project-image{border-bottom:1px solid var(--lightest-navy);opacity:.85;background-position:50%;background-size:cover;height:165px;transition:opacity .2s}.project-card:hover .project-image{opacity:1}.project-content{flex-direction:column;flex-grow:1;padding:20px 18px;display:flex}.project-title{color:var(--lightest-slate);font-family:var(--font-sans);margin-bottom:8px;font-size:20px;font-weight:700}.project-card:hover .project-title{color:var(--green-bright)}.project-desc{color:var(--slate);font-family:var(--font-sans);flex-grow:1;margin-bottom:14px;font-size:14.5px;line-height:21px}.project-stack{font-family:var(--font-mono);color:var(--light-slate);flex-wrap:wrap;gap:6px;margin-bottom:14px;font-size:11px;display:flex}.project-links{gap:12px;display:flex}.project-links a{color:var(--light-slate);align-items:center;display:inline-flex}.project-links a:hover{color:var(--green-bright)}.other-projects h3{color:var(--lightest-slate);font-family:var(--font-sans);text-align:center;margin-bottom:16px;font-size:21px;font-weight:700}.other-projects-list li{color:var(--slate);font-family:var(--font-sans);background-color:var(--light-navy);border:1px solid var(--lightest-navy);border-radius:6px;margin-bottom:9px;padding:12px 16px;font-size:14px;line-height:1.5}.education-card{background-color:var(--light-navy);border-left:2px solid var(--green-bright);border-radius:6px;margin-bottom:24px;padding:16px 18px}.edu-degree{color:var(--lightest-slate);font-family:var(--font-sans);margin-bottom:4px;font-size:18px}.edu-school{color:var(--slate);font-family:var(--font-sans);font-size:15px}.edu-date{color:var(--light-slate);font-family:var(--font-mono);margin-top:6px;font-size:12px;display:block}@media (width<=768px){.slider-container{margin-bottom:28px}.slider-btn{display:none}.projects-slider{gap:13px;padding-bottom:12px}.project-card{border-radius:10px;width:76vw;min-width:250px;max-width:300px}.project-content{padding:15px 13px}.project-title{margin-bottom:7px;font-size:17px}.project-image{height:140px}.project-desc{margin-bottom:12px;font-size:13px;line-height:19px}.project-stack{gap:5px;margin-bottom:12px;font-size:10.5px}.other-projects h3{margin-bottom:12px;font-size:18px}.other-projects-list li{padding:10px 12px;font-size:12.5px;line-height:1.45}.education-card{margin-bottom:18px;padding:14px}.edu-degree{font-size:16.5px}.edu-school{font-size:13.5px}.edu-date{font-size:11.5px}}@media (width<=480px){.slider-container{margin-bottom:22px}.projects-slider{gap:10px;padding-bottom:10px}.project-card{width:80vw;min-width:230px;max-width:270px}.project-image{height:125px}.project-content{padding:12px 11px}.project-title{margin-bottom:5px;font-size:15.5px}.project-desc{margin-bottom:10px;font-size:12px;line-height:17px}.project-stack{gap:4px;margin-bottom:10px;font-size:9.5px}.other-projects h3{margin-bottom:10px;font-size:16.5px}.other-projects-list li{padding:9px 11px;font-size:11.5px;line-height:1.4}.education-card{margin-bottom:14px;padding:12px}.edu-degree{font-size:15px}.edu-school{font-size:12.5px}.edu-date{font-size:10.5px}}.app-container{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:0 40px}@media (width<=1080px){.main-content{padding:0 32px}}@media (width<=768px){.main-content{padding:0 24px;padding-left:max(24px, env(safe-area-inset-left));padding-right:max(24px, env(safe-area-inset-right))}}@media (width<=480px){.main-content{padding:0 20px;padding-left:max(20px, env(safe-area-inset-left));padding-right:max(20px, env(safe-area-inset-right))}}.footer-container{text-align:center;color:var(--slate);font-family:var(--font-mono,monospace);flex-direction:column;align-items:center;gap:12px;padding:30px 20px 40px;font-size:12px;display:flex}@media (width<=480px){.footer-container{gap:10px;padding:24px 16px 36px;font-size:11px}}:root{--dark-navy:#020c1b;--navy:#0a192f;--light-navy:#112240;--lightest-navy:#233554;--navy-shadow:#020c1bb3;--slate:#8892b0;--light-slate:#a8b2d1;--lightest-slate:#ccd6f6;--white:#e6f1ff;--green-bright:#64ffda;--green:#64ffda;--green-tint:#64ffda1a;--yellow:#ffd166;--cream-muted:#f5efe026;--font-sans:"NTR", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:Menlo, Consolas, Monaco, "Courier New", monospace}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--navy);color:var(--lightest-slate);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:#64ffda26;margin:0;font-size:16px;line-height:1.5;overflow-x:hidden}@media (width<=768px){body{font-size:15px}}@media (width<=480px){body{font-size:14px}}code,pre,.monospace{font-family:var(--font-mono)}a{color:var(--green-bright);text-decoration:none;transition:color .2s ease-in-out}a:hover{color:var(--lightest-slate)}ul{list-style:none}section{max-width:1000px;margin:0 auto;padding:80px 0;scroll-margin-top:80px}@media (width<=1080px){section{padding:65px 0}}@media (width<=768px){section{padding:55px 0;scroll-margin-top:65px}}@media (width<=480px){section{padding:44px 0;scroll-margin-top:60px}}.section-heading{font-family:var(--font-sans);color:var(--lightest-slate);white-space:nowrap;align-items:center;margin-bottom:35px;font-size:38px;font-weight:700;display:flex}.section-heading:after{content:"";background-color:var(--lightest-navy);flex:1;max-width:300px;height:1px;margin-left:20px;display:block}@media (width<=768px){.section-heading{margin-bottom:22px;font-size:28px}.section-heading:after{display:none}}@media (width<=480px){.section-heading{margin-bottom:18px;font-size:22px}}.highlight{color:var(--green-bright)}.fade-in-section{opacity:0;visibility:hidden;will-change:opacity, visibility;transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1);transform:translateY(20px)}.fade-in-section.is-visible{opacity:1;visibility:visible;transform:none}@media (prefers-reduced-motion:reduce){.fade-in-section{opacity:1;visibility:visible;transition:none;transform:none}}.btn{color:var(--green-bright);border:1px solid var(--green-bright);font-family:var(--font-mono);cursor:pointer;touch-action:manipulation;background-color:#0000;border-radius:4px;padding:.65rem 1.15rem;font-size:13.5px;text-decoration:none;transition:all .2s ease-in-out;display:inline-block}.btn:hover{background-color:var(--green-tint)}@media (width<=480px){.btn{padding:.5rem .95rem;font-size:12.5px}}
