*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}html{scroll-behavior:smooth;scroll-padding-top:2rem}::-moz-selection{background-color:#fff;color:#18181b}::selection{background-color:#fff;color:#18181b}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .3s ease,color .3s ease}body.light-mode{background-color:#f8f8f8;color:#171717}body.light-mode ::-moz-selection{background-color:#171717;color:#fff}body.light-mode ::selection{background-color:#171717;color:#fff}p{line-height:1.5}.font-codec{font-family:Codec Pro,Inter,sans-serif}.nav-icon{width:40px;height:40px;border:1px solid transparent;display:flex;align-items:center;justify-content:center;color:#a1a1aa;transition:all .3s ease;border-radius:2px;position:relative}.light-mode .nav-icon{color:#6b7280}.nav-icon:hover{border-color:#3f3f46;color:#fff;background-color:hsla(0,0%,100%,.05)}.light-mode .nav-icon:hover{border-color:#d1d5db;color:#171717;background-color:rgba(0,0,0,.05)}.nav-icon.active{color:#fff;border-color:#fff}.light-mode .nav-icon.active{color:#171717;border-color:#171717}.nav-icon:after{content:attr(title);position:absolute;left:50px;top:50%;transform:translateY(-50%);background-color:#18181b;color:#fff;font-size:.75rem;padding:.5rem .75rem;border-radius:2px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;z-index:100;border:1px solid #3f3f46;font-family:Inter,sans-serif;font-weight:400;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);transform:translateY(-50%) translateX(-10px)}.light-mode .nav-icon:after{background-color:#fff;color:#171717;border:1px solid #e5e7eb;box-shadow:0 4px 6px -1px rgba(0,0,0,.05),0 2px 4px -1px rgba(0,0,0,.03)}.nav-icon:hover:after{opacity:1;transform:translateY(-50%) translateX(0)}.side-nav{background-color:#18181b;border-right:1px solid #27272a;transition:background-color .3s ease,border-color .3s ease}.light-mode .side-nav{background-color:#fff;border-right:1px solid #e5e7eb}.btn-primary{display:inline-flex;align-items:center;justify-content:center;background-color:#fff;color:#000;font-weight:500;padding:.75rem 1.5rem;border-radius:2px;transition:all .3s ease}.light-mode .btn-primary{background-color:#171717;color:#fff}.btn-primary:hover{background-color:#e5e5e5}.light-mode .btn-primary:hover{background-color:#404040}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;background-color:transparent;color:#fff;font-weight:500;padding:.75rem 1.5rem;border:1px solid #3f3f46;border-radius:2px;transition:all .3s ease}.light-mode .btn-secondary{color:#171717;border:1px solid #d1d5db}.btn-secondary:hover{border-color:#fff}.light-mode .btn-secondary:hover{border-color:#171717}.section-heading{font-size:2.5rem;font-weight:700;position:relative;display:inline-block;font-family:Space Mono,monospace}.section-heading:after{content:"";position:absolute;width:60px;height:1px;background-color:#fff;bottom:-10px;left:0;animation:widthGrow .6s ease-out forwards}.light-mode .section-heading:after{background-color:#171717}.bg-black{transition:background-color .3s ease}.light-mode .bg-black{background-color:#fff}.bg-zinc-950{transition:background-color .3s ease}.light-mode .bg-zinc-950{background-color:#f3f4f6}.light-mode .text-white{color:#171717}.light-mode .text-gray-300,.light-mode .text-gray-400{color:#6b7280}.hover-card{transition:transform .3s ease,border-color .3s ease,background-color .3s ease}.light-mode .hover-card{background-color:#fff;border-color:#e5e7eb}.hover-card:hover{border-color:#52525b}.light-mode .hover-card:hover{border-color:#9ca3af}.tech-tag{display:inline-block;background-color:transparent;color:#a1a1aa;border:1px solid #3f3f46;border-radius:2px;padding:.25rem .5rem;font-size:.75rem;transition:all .3s ease}.light-mode .tech-tag{color:#6b7280;border:1px solid #d1d5db}.tech-tag:hover{border-color:#71717a;color:#fff}.light-mode .tech-tag:hover{border-color:#9ca3af;color:#171717}.form-input{width:100%;padding:.75rem;background-color:#18181b;border:1px solid #3f3f46;border-radius:2px;color:#fff;transition:all .3s ease}.light-mode .form-input{background-color:#fff;border:1px solid #e5e7eb;color:#171717}.form-input:focus{outline:none;border-color:#fff}.light-mode .form-input:focus{border-color:#171717}.form-input::-moz-placeholder{color:#52525b}.form-input::placeholder{color:#52525b}.light-mode .form-input::-moz-placeholder{color:#9ca3af}.light-mode .form-input::placeholder{color:#9ca3af}.social-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #3f3f46;border-radius:2px;color:#a1a1aa;transition:all .3s ease}.light-mode .social-icon{border:1px solid #d1d5db;color:#6b7280}.social-icon:hover{border-color:#fff;color:#fff}.light-mode .social-icon:hover{border-color:#171717;color:#171717}.testimonial-card{position:relative;border:1px solid #3f3f46;padding:2rem;border-radius:2px;transition:all .3s ease}.light-mode .testimonial-card{border:1px solid #e5e7eb;background-color:#fff}.testimonial-card:hover{border-color:#52525b}.light-mode .testimonial-card:hover{border-color:#9ca3af}.testimonial-card:before{content:'"';position:absolute;top:1rem;left:1.5rem;font-size:4rem;font-family:Georgia,serif;color:#3f3f46;line-height:1;opacity:.5}.light-mode .testimonial-card:before{color:#e5e7eb}.timeline-container:before{background-color:#3f3f46;transition:background-color .3s ease}.light-mode .timeline-container:before{background-color:#d1d5db}.timeline-item:before{background-color:#fff;transition:background-color .3s ease}.light-mode .timeline-item:before{background-color:#171717}.light-mode::-webkit-scrollbar-track{background:#f3f4f6}.light-mode::-webkit-scrollbar-thumb{background:#d1d5db}.light-mode::-webkit-scrollbar-thumb:hover{background:#9ca3af}.light-mode .skill-list li{border-bottom:1px solid rgba(209,213,219,.5)}.skill-icon-placeholder{transition:background-color .3s ease}.light-mode .skill-icon-placeholder{color:#171717}.light-mode .skill-icon-placeholder:first-child{fill:#171717}.skill-category h3:after{transition:background .3s ease}.light-mode .skill-category h3:after{background:linear-gradient(90deg,#171717,transparent)}.border-zinc-800{transition:border-color .3s ease}.light-mode .border-t.border-zinc-800,.light-mode .border-zinc-800{border-color:#e5e7eb}.theme-toggle-icon{transition:opacity .3s ease}.theme-toggle-icon.sun{opacity:0}.light-mode .theme-toggle-icon.sun,.theme-toggle-icon.moon{opacity:1}.light-mode .theme-toggle-icon.moon{opacity:0}@media (max-width:1024px){.section-heading{font-size:2.25rem}.nav-icon:after{left:45px;font-size:.7rem;padding:.4rem .6rem}}@media (max-width:768px){.section-heading{font-size:2rem}.section-heading:after{width:40px}.py-24{padding-top:3rem!important;padding-bottom:3rem!important}.px-6{padding-left:1rem!important;padding-right:1rem!important}.skill-bar-text{font-size:.875rem}.testimonial-card{padding:1.5rem}#home h1{font-size:2.5rem!important}#home p{font-size:1rem!important}.nav-icon:after{left:40px;padding:.3rem .5rem}}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes widthGrow{0%{width:0}to{width:60px}}.fade-up{animation:fadeUp .8s ease-out}.fade-in{animation:fadeIn .8s ease-out}.slide-in-right{animation:slideInRight 1s ease-out forwards}section.in-view{opacity:1}.skill-bar-fill{animation:slideInRight 1s ease-out forwards;animation-delay:.3s;width:0!important}.in-view .skill-bar-fill{width:var(--percentage)!important}.timeline-item{animation:fadeIn .8s ease-out forwards;animation-delay:calc(var(--item-index)*.2s);opacity:0;animation-fill-mode:forwards}.in-view .timeline-item{opacity:1}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#18181b}::-webkit-scrollbar-thumb{background:#3f3f46;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#52525b}.profile-image-container{position:relative;transition:all .3s ease;overflow:hidden}.profile-image-container:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border:1px solid #3f3f46;opacity:0;transition:opacity .3s ease}.profile-image-container:hover:after{opacity:1}.skill-list{list-style:none;padding:0;margin:0}.skill-list li{display:flex;align-items:center;padding:.5rem 0;transition:all .3s ease;border-bottom:1px solid rgba(63,63,70,.3)}.skill-list li:last-child{border-bottom:none}.skill-icon-placeholder{width:20px;height:20px;display:flex;align-items:center;justify-content:center;margin-right:.75rem}.skill-icon-placeholder:first-child{fill:#fff}.skill-category{position:relative;padding-bottom:.5rem;margin-bottom:1.5rem}.skill-category h3{display:inline-block;position:relative;margin-bottom:1rem;font-size:1.1rem}.skill-category h3:after{content:"";position:absolute;left:0;bottom:-5px;width:100%;height:1px;background:linear-gradient(90deg,#fff,transparent)}.skills-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:2rem}@media (min-width:640px){.skills-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:768px){.skills-grid{grid-template-columns:repeat(3,1fr)}}