/*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap";@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-1\/2{top:50%}.left-1\/2{left:50%}.z-10{z-index:10}.mx-auto{margin-inline:auto}.block{display:block}.hidden{display:none}.inline-flex{display:inline-flex}.h-\[400px\]{height:400px}.h-px{height:1px}.min-h-screen{min-height:100vh}.w-\[400px\]{width:400px}.max-w-\[400px\]{max-width:400px}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.overflow-y-auto{overflow-y:auto}.rounded-full{border-radius:3.40282e+38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab}.bg-gradient-to-br,.bg-gradient-to-r{background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab}.italic{font-style:italic}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,visibility,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.duration-300{--tw-duration:.3s;transition-duration:.3s}@media (hover:hover){.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:scale-110:hover{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x)var(--tw-scale-y)}}:root{--bg-primary:#0a0a0f;--bg-secondary:#1a0f0f;--bg-tertiary:#0f1a0f;--text-primary:#fff;--text-secondary:#a0a0a0;--text-muted:#6b7280;--accent-primary:#dc2626;--accent-secondary:#16a34a;--accent-tertiary:#f59e0b;--border-color:#374151;--card-bg:#1a0f0fcc;--gradient-primary:linear-gradient(135deg,#7f1d1d,#14532d);--gradient-secondary:linear-gradient(135deg,#dc2626,#16a34a);--gradient-tertiary:linear-gradient(135deg,#991b1b,#166534)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:var(--text-primary);background:linear-gradient(to top right,#0d4a13,#1a2e1a 15%,#000 35% 65%,#2e1a1a 85%,#4a0d0d);font-family:Inter,sans-serif;line-height:1.6;overflow-x:hidden}.section{min-height:auto;padding:6rem 1.5rem 4rem;display:block}#contact,#experience,#home,#projects,.section{scroll-margin-top:120px}.container{width:100%;max-width:1200px;margin:0 auto}.hero{text-align:center;padding:8rem 2rem}.hero-subtitle{color:#fff;text-transform:uppercase;letter-spacing:.2em;margin-bottom:1rem;font-size:1.1rem}.hero-title{color:#fff;margin-bottom:1.5rem;font-size:3.5rem;font-weight:800;line-height:1.2}.hero-description{color:#fff;justify-content:center;align-items:center;gap:.25rem;max-width:700px;min-height:3rem;margin:0 auto 2rem;font-size:1.5rem;line-height:1.6;display:flex}.typing-text{color:#fff;font-weight:500}.typing-cursor{background:#fff;width:.5rem;height:1.5rem;margin-left:.25rem;animation:blink 1s step-end infinite;display:inline-block}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.hero-avatar{background:var(--gradient-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:200px;height:200px;margin:2rem auto;font-size:4rem;font-weight:700;display:flex}.terminal{background:#1a1a1a;border:1px solid #ffffff1a;border-radius:8px;max-width:600px;margin:2rem auto;padding:0;font-family:SF Mono,Roboto Mono,monospace;overflow:hidden;box-shadow:0 10px 30px #0000004d}.terminal-header{background:#2d2d2d;border-bottom:1px solid #ffffff0d;align-items:center;gap:8px;padding:8px 12px;display:flex}.terminal-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px;transition:all .2s}.terminal-dot.red{background:#ff5f56}.terminal-dot.yellow{background:#ffbd2e}.terminal-dot.green{background:#28c840}.terminal-dot:hover{transform:scale(1.1)}.terminal-content{color:#f0f0f0;background:#1a1a1a;min-height:180px;padding:16px;font-family:SF Mono,Roboto Mono,monospace;font-size:.9rem;line-height:1.5}.terminal-title{color:#888;text-align:center;-webkit-user-select:none;user-select:none;flex-grow:1;margin-left:8px;font-family:-apple-system,BlinkMacSystemFont,sans-serif;font-size:.8rem}.terminal-command{color:#f0f0f0}.terminal-cursor{vertical-align:middle;background:#f0f0f0;width:8px;height:16px;margin-left:2px;animation:blink 1s step-end infinite;display:inline-block}.terminal-comment{color:var(--text-muted)}.navbar{z-index:1000;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(90deg,#0d4a13d9,#000000d9 35% 65%,#4a0d0dd9);border-bottom:1px solid #ffffff1a;padding:1.5rem 0;position:fixed;top:0;left:0;right:0}.navbar.navbar-scrolled{-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);background:linear-gradient(90deg,#0d4a13fa,#000000fa 35% 65%,#4a0d0dfa);border-bottom:1px solid #fff3}.nav-container{justify-content:space-between;align-items:center;max-width:1040px;margin:0 auto;padding:0 1rem;display:flex}.nav-logo{color:#fff;-webkit-text-fill-color:white;text-fill-color:white;background:0 0;-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:600;text-decoration:none;transition:all .3s;position:relative}.nav-logo:hover{background:var(--gradient-primary);-webkit-text-fill-color:transparent;text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;transform:translateY(-2px)}.nav-links{gap:1.25rem;margin:0;padding:0;list-style:none;display:flex}.nav-link{color:#fff;cursor:pointer;z-index:1;-webkit-text-fill-color:white;text-fill-color:white;background:0 0;-webkit-background-clip:text;background-clip:text;border:none;border-radius:4px;align-items:center;padding:.5rem 1rem;font-size:1rem;font-weight:500;line-height:1;text-decoration:none;transition:all .3s;display:inline-flex;position:relative;overflow:hidden}.nav-link:before{content:"";z-index:-1;opacity:0;border-radius:4px;transition:opacity .3s;position:absolute;inset:0}.nav-link:before,.nav-link:hover{background:var(--gradient-primary)}.nav-link:hover{-webkit-text-fill-color:transparent;text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;transform:translateY(-2px)}.nav-link:focus:not(:focus-visible){-webkit-text-fill-color:white;text-fill-color:white;background:0 0;-webkit-background-clip:text;background-clip:text;outline:none;transform:none}.nav-link:focus-visible{outline-offset:2px;outline:2px solid #ffffff4d}.nav-link.active{color:#fff;-webkit-text-fill-color:white;text-fill-color:white;font-weight:600;transform:translateY(-2px)}.nav-link.active:before{opacity:1;z-index:-1}.nav-link:not(.active):hover:after{content:"";background:#fff;width:50%;height:2px;transition:width .3s;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.nav-social{align-items:center;gap:1rem;display:flex}.nav-social a{color:#fff;transition:opacity .2s}.nav-social a:hover{opacity:.8}.section-title{text-align:center;color:var(--text-primary);margin-bottom:3rem;font-size:3rem;font-weight:700}.section-subtitle{color:var(--text-secondary);text-align:center;max-width:600px;margin-bottom:4rem;margin-left:auto;margin-right:auto;font-size:1.2rem}.card{background:var(--card-bg);border:1px solid var(--border-color);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:2rem;transition:all .3s}.card:hover{border-color:#0000;border-image:var(--gradient-primary)1;transform:translateY(-5px);box-shadow:0 20px 40px #3b82f61a}.card-title{color:var(--text-primary);margin-bottom:1rem;font-size:1.5rem;font-weight:600}.card-description{color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.6}.card-meta{color:var(--text-muted);gap:1rem;margin-bottom:1rem;font-size:.9rem;display:flex}.card-tags{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.tag{background:var(--gradient-primary);color:#fff;border:1px solid #fff3;border-radius:9999px;padding:.25rem .75rem;font-size:.8rem;font-weight:600;box-shadow:0 1px 2px #0003}.grid{gap:2rem;display:grid}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.project-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;transition:all .3s;overflow:hidden}.project-card:hover{border-color:#0000;border-image:var(--gradient-primary)1;transform:translateY(-5px);box-shadow:0 20px 40px #3b82f61a}.project-image{background:var(--gradient-primary);color:#fff;justify-content:center;align-items:center;width:100%;height:200px;font-size:3rem;display:flex}.project-content{padding:1.5rem}.project-title{color:var(--text-primary);margin-bottom:.5rem;font-size:1.3rem;font-weight:600}.project-description{color:var(--text-secondary);margin-bottom:1rem;font-size:.9rem;line-height:1.5}.project-links{gap:1rem;display:flex}.project-link{background:var(--gradient-primary);-webkit-text-fill-color:transparent;text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:color .3s;display:inline-flex}.project-link svg{color:#fff;background:var(--gradient-primary);border-radius:6px;width:18px;height:18px;padding:2px}.project-link:hover{background:var(--gradient-primary);-webkit-text-fill-color:transparent;text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.tech-grid{grid-template-columns:repeat(auto-fit,minmax(60px,1fr));gap:1rem;margin:2rem 0;display:grid}.tech-item{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;transition:all .3s;display:flex}.tech-item:hover{border-color:#0000;border-image:var(--gradient-primary)1;transform:translateY(-2px)}.tech-icon{background:var(--gradient-primary);color:#fff;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;font-weight:600;display:flex}.tech-name{color:var(--text-secondary);text-align:center;font-size:.8rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.fade-in-up{animation:fadeInUp .8s ease-out}.fade-in-left{animation:fadeInLeft .8s ease-out}.fade-in-right{animation:fadeInRight .8s ease-out}.hamburger-menu{cursor:pointer;z-index:10;background:0 0;border:none;flex-direction:column;justify-content:space-around;width:24px;height:24px;padding:0;display:none}.hamburger-menu span{transform-origin:1px;background:#fff;border-radius:10px;width:24px;height:3px;transition:all .3s linear;position:relative}.hamburger-menu:hover span{background:var(--gradient-primary)}.mobile-menu-overlay{z-index:1100;opacity:0;visibility:hidden;pointer-events:none;background:0 0;width:100%;height:100%;transition:all .3s;position:fixed;top:0;left:0}.mobile-menu-overlay.mobile-menu-open{opacity:1;visibility:visible;pointer-events:auto}.mobile-menu{z-index:1101;border-left:1px solid #ffffff1a;width:280px;height:100%;transition:transform .3s;position:fixed;top:0;right:0;transform:translate(100%);background:#0a0a0f!important}.mobile-menu.mobile-menu-open{transform:translate(0)}.mobile-menu-content{flex-direction:column;height:100%;padding:2rem;display:flex;background:#0a0a0f!important}.mobile-menu-close{color:#fff;cursor:pointer;background:0 0;border:none;align-self:flex-end;margin-bottom:2rem;padding:.5rem;font-size:1.5rem}.mobile-menu-close:hover{color:#eee}.mobile-menu-links{flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.mobile-menu-link{color:#fff;cursor:pointer;text-align:left;background:0 0;border:none;border-bottom:1px solid #fff3;width:100%;padding:1rem 0;font-size:1.1rem;font-weight:500;text-decoration:none;transition:color .3s,background .3s;display:block}.mobile-menu-link:hover{background:var(--gradient-primary);-webkit-text-fill-color:transparent;text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.mobile-menu-footer{border-top:1px solid #fff3;margin-top:auto;padding-top:2rem}.mobile-menu-social{justify-content:center;gap:1.5rem;display:flex}.mobile-menu-social a{color:#fff;background:#ffffff0f;border:1px solid #ffffff26;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;transition:background .3s,border-color .3s,color .3s;display:inline-flex}.mobile-menu-social a:hover{background:var(--gradient-primary);color:#fff;border-color:#0000}.footer-social{gap:.5rem}.footer-social a{color:#fff;background:#ffffff0f;border:1px solid #ffffff26;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;transition:background .3s,border-color .3s,color .3s;display:inline-flex}.footer-social a:hover{background:var(--gradient-primary);color:#fff;border-color:#0000}.contact-dropdown{z-index:1200;border-color:#ffffff26;border-radius:12px;position:absolute}.contact-link{color:#fff;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:.5rem;padding:.5rem .75rem;text-decoration:none;transition:background .3s,border-color .3s,color .3s;display:flex}.contact-link:hover{background:var(--gradient-primary);color:#fff;border-color:#0000}#experience .flex.flex-row{flex-direction:row!important;align-items:flex-start!important;display:flex!important}#experience .flex-shrink-0.flex{flex-shrink:0!important;width:720px!important}#experience .flex-1{overflow-wrap:break-word!important;flex:1!important;min-width:0!important;margin-left:.25rem!important}.active-pill{color:#fff;vertical-align:middle;background:linear-gradient(135deg,#2563eb,#7c3aed);border:1px solid #fff3;border-radius:9999px;padding:.125rem .5rem;line-height:1.2;display:inline-block;box-shadow:0 1px 2px #0003}@media (max-width:1120px){#experience .flex.flex-row{flex-direction:column!important;align-items:center!important}#experience .flex-shrink-0.flex{justify-content:center!important;width:100%!important;transform:none!important}#experience .flex-shrink-0.flex>div{margin-left:auto!important;margin-right:auto!important;padding:16px!important}#experience .flex-shrink-0.flex img{transform:none!important}#experience [aria-hidden=true]{display:none!important}#experience .flex-1{text-align:center!important;width:100%!important;max-width:800px!important;margin:-10rem auto 4rem!important;padding-left:0!important}#experience .section-subtitle,#experience .section-title,#experience h1,#experience h2,#experience h3{text-align:center!important;margin-left:auto!important;margin-right:auto!important}}@media (max-width:768px){.navbar{padding:1rem}.nav-links{display:none}.hamburger-menu{display:flex}#experience .flex-shrink-0.flex,#experience .flex-shrink-0.flex img{transform:none!important}.hero-title{font-size:2.5rem}.terminal{max-width:100%;margin-left:0;margin-right:0}#home .relative.w-full.max-w-\[400px\].h-\[400px\]{height:350px!important}#home .mt-16{margin-top:0!important}#home .mt-16>div{transform:scale(.9)}.section-title{font-size:2rem}.section{padding:4rem 1rem 2rem}.grid-2,.grid-3{grid-template-columns:1fr}.tech-grid{grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:.5rem}.gap-4{gap:1rem}.w-full{width:100%}.h-full{height:100%}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.cursor-pointer{cursor:pointer}.transition-all{transition:all .3s}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}