@import "https://fonts.googleapis.com/css2?family=Pixelify+Sans:wght@400..700&display=swap";
*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--clr-bg:#121212;--clr-border:#333;--clr-secondary:#27272a;--clr-accent:#fff;--clr-text-primary:#e9e9e9;--clr-text-secondary:#a0a0a0;--clr-background:var(--clr-bg);--font-family-base:"Segoe UI",ui-sans-serif,system-ui,-apple-system,sans-serif;--font-family-heading:var(--font-family-base);--font-pxlfy:"Pixelify Sans",sans-serif;--font-xs:.625rem;--font-sm:.875rem;--font-base:1rem;--font-md:1.125rem;--font-lg:1.25rem;--font-xl:1.75rem;--font-xxl:2.25rem;--space-xs:.5rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2rem;--space-xl:4rem;--space-xxl:6rem;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:1rem;--radius-full:9999px;--box-shadow:0 4px 12px #0000000d;--transition-fast:all .2s ease-in-out;--content-width:70ch;--content-width-mobile:100%;--content-width-tablet:65ch;--content-width-desktop:70ch;--container-padding:1.5rem}html{scroll-behavior:smooth;overflow-x:hidden}body{font-family:var(--font-family-base);font-size:var(--font-base);color:var(--clr-text-primary);background-color:var(--clr-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;grid-template-columns:var(--container-padding)1fr var(--container-padding);line-height:1.6;display:grid;overflow-x:hidden}body>*{grid-column:2;min-width:0}main{gap:var(--space-xl);flex-direction:column;display:flex}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-heading);margin-bottom:var(--space-sm);color:var(--clr-text-primary);font-weight:600;line-height:1.3}h1{font-size:var(--font-xxl)}h2{font-size:var(--font-xl)}h3{font-size:var(--font-lg)}h4{font-size:var(--font-md)}h5{font-size:var(--font-base);font-weight:600}h6{font-size:var(--font-sm);font-weight:600}p{margin-bottom:var(--space-sm);color:var(--clr-text-secondary)}a{color:var(--clr-text-primary);transition:var(--transition-fast);text-decoration:none}a:hover{color:var(--clr-accent)}strong,b{color:var(--clr-text-primary);font-weight:700}img,picture,video,canvas,svg{max-width:100%;display:block}.container{width:90%;max-width:var(--content-width);margin-inline:auto}.btn{font-size:var(--font-sm);font-family:var(--font-family-base);text-align:center;cursor:pointer;border-radius:var(--radius-md);transition:var(--transition-fast);border:1px solid var(--clr-border);color:var(--clr-text-primary);background-color:#0000;padding:.5rem 1.5rem;font-weight:600;text-decoration:none;display:inline-block}.btn:hover:not(.btn--primary):not(.btn--outline){background-color:var(--clr-text-primary);border-color:var(--clr-text-primary);color:var(--clr-bg)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-full{border-radius:var(--radius-full)}.pixelify-font{font-family:var(--font-pxlfy);font-style:normal;font-weight:400}.main-nav{-webkit-backdrop-filter:blur(14px);border-radius:var(--radius-full);width:fit-content;box-shadow:var(--box-shadow);padding:var(--space-sm)var(--space-md);left:50%;bottom:var(--space-lg);z-index:1000;font-size:clamp(var(--font-xs),calc(var(--font-xs) + .7vw),var(--font-md));background:#27272a36;border:1px solid #ffffff1a;justify-content:center;align-items:center;display:flex;position:fixed;overflow:hidden;transform:translate(-50%)}.nav-list{gap:var(--space-md);list-style:none;display:flex}.nav-list a{text-shadow:0 0 8px #00000080,0 0 16px #0003;transition:var(--transition-fast)}.profile-container{align-items:center;gap:var(--space-sm);text-align:left;border-radius:var(--border-radius);margin-block:var(--space-md);flex-wrap:wrap;display:flex}.profile-name{font-size:var(--font-md);color:var(--clr-text-primary);margin-bottom:var(--space-xs)}.profile-title{font-size:var(--font-sm);color:var(--clr-text-secondary);white-space:nowrap;align-items:center;gap:.35rem;margin-bottom:0;display:flex}.profile-title a{align-items:center;gap:.35rem;display:inline-flex}.profile-title img{vertical-align:middle;flex-shrink:0}.about-content{color:var(--clr-text-secondary);margin-bottom:var(--space-lg);line-height:1.6}.profile-pic{-o-object-fit:cover;object-fit:cover;border-radius:var(--radius-full);width:77px;min-width:77px;height:77px}.domain-address{font-size:var(--font-xs);color:var(--clr-text-secondary);margin-left:var(--space-xs);border-radius:var(--radius-full);vertical-align:middle;background-color:#1e1e1e;padding:.25em .7em;font-weight:lighter}.action-links{align-items:center;gap:var(--space-sm);display:flex}.btn--primary{background-color:var(--clr-accent);color:var(--clr-bg);border-color:var(--clr-accent);align-items:center;gap:var(--space-xs);transition:transform .5s cubic-bezier(.1,.8,.2,1),box-shadow .5s cubic-bezier(.1,.8,.2,1),opacity .4s ease-out;display:inline-flex;transform:translateY(0)}.btn--primary:hover{background-color:var(--clr-accent);color:var(--clr-bg);border-color:var(--clr-accent);opacity:.8}.btn--primary.btn--glow:hover{background-color:var(--clr-accent);color:var(--clr-bg);border-color:var(--clr-accent);opacity:1;transform:translateY(-2px);box-shadow:0 0 0 1px #fff6,0 12px 24px -10px #0006,0 0 32px #ffffff2e}.social-icons{gap:var(--space-xs);display:flex}.social-icon{background-color:var(--clr-secondary);border-radius:var(--radius-full);width:36px;height:36px;color:var(--clr-text-primary);transition:var(--transition-fast);justify-content:center;align-items:center;display:flex}.social-icon:hover{opacity:.8}.social-icon svg{stroke:currentColor}.experience-list{margin:0;padding:0;list-style:none}.experience-item{border-radius:var(--radius-md);justify-content:space-between;align-items:center;margin-block-end:var(--space-sm);display:flex}.experience-item:last-child{margin-block-end:0}.experience-details{width:100%}.experience-summary{cursor:pointer;padding-block:var(--space-sm);justify-content:space-between;align-items:center;list-style:none;display:flex}.experience-details[open] .experience-summary{border-bottom:none}.experience-summary:after{display:none}.experience-summary::marker{display:none}.experience-summary::-webkit-details-marker{display:none}.experience-item-content-left{align-items:center;gap:var(--space-sm);display:flex}.company-logo{border-radius:var(--radius-full);-o-object-fit:cover;object-fit:cover;border:1.5px solid var(--clr-border);flex-shrink:0;width:48px;height:48px}.company-info{flex-direction:column;display:flex}.experience-item h3,.experience-item p{margin:0}.experience-item-company{font-size:var(--font-md);color:var(--clr-text-primary)}.experience-item-role{font-size:var(--font-sm);color:var(--clr-text-secondary)}.experience-item-dates{font-size:calc(var(--font-xs) + .7vw);color:var(--clr-text-secondary);align-items:center;gap:var(--space-xs);text-align:right;flex-shrink:0;display:flex}.experience-arrow{color:var(--clr-text-secondary);opacity:.7;transition:transform .2s}.experience-details[open] .experience-arrow{transform:rotate(90deg)}.experience-description{font-size:var(--font-sm);padding-left:5rem}.experience-description ul{list-style-type:disc}.experience-description li{margin-bottom:.5rem;line-height:1.6}.project-list{gap:var(--space-lg);flex-direction:column;display:flex}.project-card{gap:var(--space-xs);flex-direction:column;display:flex}.project-image-wrapper{border-radius:var(--radius-md);overflow:hidden}.project-image-wrapper img{-o-object-fit:cover;object-fit:cover;width:100%;height:200px}.project-content-wrapper{flex-direction:row;justify-content:space-between;align-items:center;display:flex}.project-title,.project-tech{color:var(--clr-text-primary);margin:0}.project-title{font-size:var(--font-md)}.project-tech{font-size:var(--font-sm);color:var(--clr-text-secondary)}.contact-section{flex-direction:column;display:flex}.contact-form,.form-row{gap:var(--space-md);flex-direction:column;display:flex}.form-group{gap:var(--space-xs);flex-direction:column;width:100%;display:flex}.contact-form input,.contact-form textarea{width:100%;font-family:var(--font-family-base);font-size:var(--font-base);color:var(--clr-text-primary);border:1px solid var(--clr-border);border-radius:var(--radius-md);transition:var(--transition-fast);background-color:#0000;padding:.75rem}@media (max-width:768px){.work-gallery-item{grid-column:span 12!important}}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--clr-accent);outline:none}.contact-form label{font-size:var(--font-sm);color:var(--clr-text-secondary)}.contact-form .btn{padding:.75rem 1.5rem}.footer-section{margin:var(--space-xl)0 var(--space-md)0;color:var(--clr-text-secondary);font-size:var(--font-xs);flex-direction:column;align-items:center;display:flex}.footer-section p{margin-bottom:var(--space-xs)}.footer-section p:first-child{margin:0}.experience-item,.project-image-wrapper>img{transition:var(--transition-fast)}.experience-item:hover,.project-image-wrapper>img:hover{transform:scale(1.02)}.project-open svg{transition:var(--transition-fast)}.project-list>a:hover .project-open svg{color:var(--clr-accent);stroke:var(--clr-accent);transform:translate(2px)translateY(-2px)}.nav-list a:hover{text-shadow:0 0 12px #ffffff80,0 0 24px #ffffffe6}@media (min-width:768px){body{grid-template-columns:1fr minmax(auto,var(--content-width))1fr}.experience-item-company{font-size:var(--font-md)}.experience-item-role,.experience-item-dates{font-size:var(--font-sm)}.project-list{flex-flow:wrap;display:flex}.project-list>a{flex:1 1 calc(50% - var(--space-lg)/2);min-width:0}.form-row{flex-direction:row}}.tech-stack-section{max-width:100%;padding:0;position:relative;overflow:hidden}.tech-stack-container{width:100%;max-width:100%;padding:var(--space-xs)0;position:relative;overflow:hidden}.tech-stack-container:before,.tech-stack-container:after{content:"";z-index:2;pointer-events:none;width:40%;min-width:80px;position:absolute;top:0;bottom:0}.tech-stack-container:before{background:linear-gradient(to right,var(--clr-bg)0%,var(--clr-bg)15%,#121212fa 25%,#121212d9 40%,#12121299 60%,#12121233 80%,transparent 100%);left:0}.tech-stack-container:after{background:linear-gradient(to left,var(--clr-bg)0%,var(--clr-bg)15%,#121212fa 25%,#121212d9 40%,#12121299 60%,#12121233 80%,transparent 100%);right:0}.tech-stack-track{width:max-content;animation:20s linear infinite scrolling;display:flex}.tech-stack-set{align-items:center;gap:var(--space-md);padding-right:var(--space-md);display:flex}.tech-stack-container:hover .tech-stack-track{animation-play-state:paused}.tech-stack-item{text-align:center;width:100px;color:var(--clr-text-secondary);flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;display:flex}.tech-stack-item img{transition:var(--transition-fast)}.tech-stack-item img:hover{transform:scale(1.1)}@keyframes scrolling{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.tech-stack-track{animation:none}}.animate-fade-in{animation:.6s both fadeIn}.scroll-reveal:not(.is-visible) .animate-fade-in{opacity:0;animation-play-state:paused}.scroll-reveal.is-visible .animate-fade-in{animation-play-state:running}.animate-fade-up{will-change:transform,opacity,filter;animation:.85s cubic-bezier(.16,1,.3,1) both fadeUp}.scroll-reveal:not(.is-visible) .animate-fade-up,.scroll-reveal.animate-fade-up:not(.is-visible){opacity:0;filter:blur(8px);will-change:transform,opacity,filter;animation:none;transform:translateY(36px)}.scroll-reveal.is-visible .animate-fade-up,.scroll-reveal.animate-fade-up.is-visible{animation:.85s cubic-bezier(.16,1,.3,1) both fadeUp}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.delay-700{animation-delay:.7s}.pixel-border{box-shadow:-4px 0 #ffffff26,4px 0 #ffffff26,0 -4px #ffffff26,0 4px #ffffff26;border:none!important}.retro-btn{font-family:var(--font-pxlfy);font-size:var(--font-sm);color:var(--clr-bg);cursor:pointer;background:#fff;border:none;align-items:center;gap:.75rem;padding:.875rem 2rem;text-decoration:none;transition:all .1s;display:inline-flex;position:relative;box-shadow:4px 4px #ffffff4d}.retro-btn:hover{transform:translate(2px,2px);box-shadow:2px 2px #ffffff4d}.retro-btn:active{transform:translate(4px,4px);box-shadow:0 0 #ffffff4d}.stat-card{text-align:center;transition:var(--transition-fast);background:#ffffff0a;border:1px solid #ffffff14;padding:1.25rem 1.5rem}.stat-card:hover{background:#ffffff12;border-color:#ffffff26}.tech-item{transition:var(--transition-fast);background:#ffffff08;border:1px solid #ffffff0f;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1rem;display:flex}.tech-item:hover{background:#ffffff14;border-color:#ffffff26;transform:translateY(-2px)}.retro-nav{z-index:100;-webkit-backdrop-filter:blur(16px);background:#121212cc;border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex;position:fixed;top:0;left:0;right:0}.work-grid{grid-template-columns:1fr;gap:3rem;display:grid}@media (min-width:768px){.work-grid{grid-template-columns:1fr 380px;gap:5rem}}@keyframes fadeUp{0%{opacity:0;filter:blur(8px);transform:translateY(36px)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.typewriter-char{opacity:0;animation:.3s forwards fadeIn;display:inline-block}.scroll-reveal:not(.is-visible) .typewriter-char{opacity:0;animation:none}.scroll-reveal.is-visible .typewriter-char{animation:.3s forwards fadeIn}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}.work-back{top:var(--space-md);left:var(--container-padding);z-index:50;align-items:center;gap:var(--space-xs);font-size:var(--font-sm);color:var(--clr-text-primary);-webkit-backdrop-filter:blur(14px);border-radius:var(--radius-md);transition:var(--transition-fast);background:#27272a36;border:1px solid #ffffff1a;padding:.5rem 1.25rem;font-weight:600;text-decoration:none;display:inline-flex;position:fixed;overflow:hidden}.work-back:hover{background-color:var(--clr-text-primary);border-color:var(--clr-text-primary);color:var(--clr-bg)}.work-hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding-bottom:12vh;display:flex;position:relative}.work-hero-logo{border-radius:var(--radius-full);-o-object-fit:cover;object-fit:cover;border:1.5px solid var(--clr-border);width:56px;height:56px;margin-bottom:var(--space-lg)}.work-hero-title{letter-spacing:-.02em;margin-bottom:.5rem;font-size:clamp(2.25rem,7vw,4rem);line-height:1.1}.work-hero-role{font-size:var(--font-md);color:var(--clr-text-secondary);margin-bottom:var(--space-lg);font-weight:400}.work-meta{justify-content:center;align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.work-meta-pill{font-style:normal;font-size:var(--font-xs);color:var(--clr-text-secondary);background-color:var(--clr-secondary);border-radius:var(--radius-full);letter-spacing:.03em;padding:.3rem .75rem;display:inline}.work-scroll-hint{color:var(--clr-text-secondary);opacity:.35;font-size:var(--font-xs);letter-spacing:.1em;flex-direction:column;align-items:center;gap:.25rem;animation:.6s .7s both fadeUp;display:flex;position:absolute;bottom:15%;left:0;right:0}.work-section{padding-top:var(--space-lg);padding-bottom:var(--space-lg);max-width:var(--content-width);padding-left:var(--container-padding);padding-right:var(--container-padding);margin:0 auto}.work-section h2{font-size:var(--font-xl);margin-bottom:var(--space-md)}.work-list{gap:var(--space-xs);flex-direction:column;padding:0;list-style:none;display:flex}.work-list li{color:var(--clr-text-secondary);padding:var(--space-xs)var(--space-sm);border-radius:var(--radius-md);line-height:1.7;font-size:var(--font-base);transition:var(--transition-fast)}.work-list li:hover{background-color:var(--clr-secondary)}.work-content{color:var(--clr-text-secondary);line-height:1.8}.work-content h3{color:var(--clr-text-primary);font-size:var(--font-md);margin-top:var(--space-lg);margin-bottom:var(--space-sm);letter-spacing:.05em;font-weight:600}.work-content h4{color:var(--clr-text-primary);font-size:var(--font-sm);margin-top:var(--space-md);margin-bottom:var(--space-xs);font-weight:600}.work-content ul{padding-left:var(--space-md);margin-top:var(--space-md);margin-bottom:var(--space-md)}.work-content li{margin-bottom:var(--space-xs);line-height:1.7}.work-content p{margin-bottom:var(--space-sm);font-size:var(--font-base);line-height:1.8}.work-content strong{color:var(--clr-text-primary);font-weight:700}.work-content blockquote{margin:var(--space-md)0;padding:var(--space-sm)var(--space-md);border-left:3px solid var(--clr-accent);background:var(--clr-secondary);border-radius:0 var(--radius-md)var(--radius-md)0;color:var(--clr-text);font-style:italic;font-size:var(--font-base);line-height:1.7}.work-callout{align-items:center;gap:var(--space-sm);margin:var(--space-xl)0 var(--space-sm)0;padding:var(--space-sm)var(--space-md);border-radius:var(--radius-md);font-size:var(--font-sm);color:var(--clr-text-secondary);background:#ffffff08;border:1px dashed #ffffff1f;line-height:1.6;display:flex}.work-callout-icon{flex-shrink:0;font-size:1.1rem}.work-callout p{font-size:var(--font-sm);margin:0}.work-content>.work-callout:first-child{margin-top:0}.work-stats{gap:var(--space-sm);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.work-stat{background:var(--clr-secondary);border-radius:var(--radius-md);padding:var(--space-md)var(--space-sm);text-align:center;flex-direction:column-reverse;flex:140px;display:flex}.work-stat-value{font-size:var(--font-xxl);letter-spacing:-.02em;color:var(--clr-text-primary);margin-bottom:.2rem;font-weight:700}.work-stat-label{font-size:var(--font-xs);color:var(--clr-text-secondary);text-transform:uppercase;letter-spacing:.08em}.work-tech{gap:var(--space-xs);flex-wrap:wrap;padding:0;list-style:none;display:flex}.work-tech-pill{font-size:var(--font-sm);color:var(--clr-text-secondary);background-color:var(--clr-secondary);border-radius:var(--radius-full);transition:var(--transition-fast);padding:.4rem 1rem}.work-tech-pill:hover{color:var(--clr-text-primary)}.work-highlights{gap:var(--space-xs);flex-direction:column;padding:0;list-style:none;display:flex}.work-highlight{align-items:flex-start;gap:var(--space-sm);padding:var(--space-sm)var(--space-md);background-color:var(--clr-secondary);border-radius:var(--radius-md);color:var(--clr-text-secondary);transition:var(--transition-fast);line-height:1.7;display:flex}.work-highlight:hover{background-color:var(--clr-border)}.work-highlight-icon{color:var(--clr-accent);font-size:var(--font-sm);flex-shrink:0;margin-top:.15rem}.work-nav{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-xl)0 var(--space-md);border-top:1px solid var(--clr-border);display:flex}.work-nav-link{transition:var(--transition-fast);opacity:.6;flex-direction:column;gap:.3rem;text-decoration:none;display:flex}.work-nav-link:hover{opacity:1}.work-nav-link--next{text-align:right;margin-left:auto}.work-nav-label{color:var(--clr-text-secondary);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:.3rem;font-size:.65rem;display:inline-flex}.work-nav-company{font-size:var(--font-base);color:var(--clr-text-primary);font-weight:500}.work-not-found{justify-content:center;align-items:center;min-height:100vh;display:flex}.work-not-found-content{text-align:center}.read-more-link{font-size:var(--font-sm);color:var(--clr-accent);align-items:center;gap:.25rem;margin-top:1rem;font-weight:600;display:inline-flex}.work-gallery-container{margin:3rem 0}.gallery-image-cell{border-radius:var(--radius-md);border:1px solid var(--clr-border);cursor:pointer;width:100%;position:relative;overflow:hidden}.gallery-image-fill{-o-object-fit:cover;object-fit:cover}.gallery-image-wrapper{transition:transform .3s,box-shadow .3s,opacity .3s}.gallery-image-wrapper:hover{transform:translateY(-3px);box-shadow:0 12px 32px #0003}.yarl__root .yarl__toolbar,.yarl__root .yarl__navigation_prev,.yarl__root .yarl__navigation_next{opacity:0;transition:opacity .3s!important}.yarl__root:hover .yarl__toolbar,.yarl__root:hover .yarl__navigation_prev,.yarl__root:hover .yarl__navigation_next{opacity:1}.yarl__toolbar{background:0 0!important;padding:1rem!important}.yarl__button{color:#ffffff80!important;filter:none!important;background:0 0!important;transition:color .2s!important}.yarl__button:hover{color:#ffffffe6!important}.yarl__navigation_prev,.yarl__navigation_next{-webkit-backdrop-filter:blur(12px)!important;backdrop-filter:blur(12px)!important;background:#ffffff0f!important;border-radius:50%!important;justify-content:center!important;align-items:center!important;width:40px!important;height:40px!important;margin:0 1rem!important;padding:0!important;transition:opacity .3s,background .2s!important;display:flex!important}.yarl__navigation_prev:hover,.yarl__navigation_next:hover{background:#ffffff1f!important}.yarl__navigation_prev svg,.yarl__navigation_next svg{width:18px!important;height:18px!important}.yarl__slide{padding:3rem!important}.yarl__slide_image{border-radius:8px!important;box-shadow:0 20px 60px #0006!important}.yarl__button--zoom-in,.yarl__button--zoom-out{display:none!important}.project-featured-img{border-radius:var(--radius-lg);border:1px solid var(--clr-border);width:100%;overflow:hidden}.project-featured-img img{width:100%;height:auto;display:block}.project-overview-section{padding-bottom:var(--space-2xl)}.project-overview{justify-content:space-between;gap:var(--space-xl)var(--space-sm);margin-bottom:var(--space-md);padding:var(--space-xl)0;border-top:2px solid var(--clr-text-primary);border-bottom:1px solid var(--clr-border);flex-wrap:wrap;display:flex}.project-overview-footer{justify-content:space-between;align-items:flex-start;gap:var(--space-md);margin-top:var(--space-lg);padding-bottom:var(--space-xl);flex-wrap:wrap;display:flex}.project-tech-stack-container{flex:1;min-width:280px;animation-delay:.2s}.project-tech-stack-label{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--clr-text-secondary);margin:0}.project-tech-stack-value{margin-top:var(--space-sm);flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.tech-badge{color:var(--clr-text-secondary);font-size:var(--font-sm);letter-spacing:.02em;border-radius:var(--radius-full);transition:var(--transition-fast);background:#ffffff05;border:1px solid #ffffff14;align-items:center;padding:.4rem 1rem;display:inline-flex}.tech-badge:hover{color:var(--clr-text);background:#ffffff0d;border-color:#ffffff26}.project-links-container{gap:var(--space-md);animation-delay:.3s;display:flex}@keyframes cellReveal{0%{opacity:0;filter:blur(4px);transform:translateY(12px)}to{opacity:1;filter:blur();transform:translateY(0)}}.project-overview .project-overview-cell{opacity:0;animation:.6s ease-out both paused cellReveal}.scroll-reveal.is-visible .project-overview .project-overview-cell{animation-play-state:running}.project-overview .project-overview-cell:first-child{animation-delay:.1s}.project-overview .project-overview-cell:nth-child(2){animation-delay:.2s}.project-overview .project-overview-cell:nth-child(3){animation-delay:.3s}.project-overview .project-overview-cell:nth-child(4){animation-delay:.4s}.project-actions{gap:var(--space-sm);margin-top:var(--space-md);flex-direction:column;width:100%;display:flex}.project-actions .btn{justify-content:center;width:100%;padding-block:.8rem}.btn--outline{border:1px solid var(--clr-border);color:var(--clr-text-primary);align-items:center;gap:var(--space-xs);background:0 0;transition:all .5s ease-out;display:inline-flex}.btn--outline:hover{background:var(--clr-text-primary);border-color:var(--clr-text-primary);color:var(--clr-bg)}.project-link{color:var(--clr-text-primary);border-bottom:1px solid var(--clr-border);font-size:var(--font-sm);letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:.5rem;padding-bottom:4px;text-decoration:none;transition:all .3s;display:inline-flex}.project-link:hover{color:var(--clr-text-secondary);border-bottom-color:var(--clr-text-secondary);transform:translateY(-1px)}.project-overview-cell{text-align:left;position:relative}.project-overview-cell dt{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.15em;color:var(--clr-text-secondary);margin-bottom:.5rem}.project-overview-cell dd{font-size:var(--font-base);color:var(--clr-text-primary);white-space:nowrap;margin:0;font-weight:400;line-height:1.4}@media (max-width:768px){.project-overview{row-gap:var(--space-xl);grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.project-overview{row-gap:var(--space-lg);grid-template-columns:1fr}}@media (max-width:640px){.project-overview{flex-wrap:wrap}.project-overview-cell{padding:var(--space-xs)0;flex:40%}.project-overview-cell+.project-overview-cell:before{display:none}}.project-actions{align-items:center;gap:var(--space-sm);margin-top:var(--space-md);display:flex}.project-actions .btn{align-items:center;gap:.4rem;display:inline-flex}.project-img{margin:var(--space-md)0 var(--space-xl)0;border-radius:var(--radius-lg);border:1px solid var(--clr-border);overflow:hidden}.project-img img{width:100%;height:auto;display:block}.project-img figcaption{padding:var(--space-xs)var(--space-sm);font-size:var(--font-xs);color:var(--clr-text-secondary);text-align:center;font-style:italic}@media (max-width:640px){.project-overview{grid-template-columns:repeat(2,1fr)}}.project-hero-subtitle{max-width:800px;margin:0 auto var(--space-md);font-size:var(--font-lg);color:var(--clr-text-secondary);line-height:1.6}.work-heading{font-size:var(--font-xl);color:var(--clr-text-primary);margin-top:0;margin-bottom:var(--space-md);letter-spacing:.05em}.project-img+h3,.project-img+h4{margin-top:var(--space-sm)}.work-content .project-img:last-child{margin-bottom:0}.hero-meta{animation-delay:.4s}.scroll-bounce-icon{animation:2s .7s infinite bounce;display:inline-block}.section-cta{text-align:center}.cta-text{color:var(--clr-text-secondary);margin-bottom:var(--space-md);line-height:1.7;animation-delay:.15s}.cta-btn-wrapper{animation-delay:.3s;display:inline-block}.nf-premium-wrap{background-color:var(--clr-bg);min-height:100vh;font-family:var(--font-family-base);grid-column:1/-1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.nf-mesh-bg{z-index:0;pointer-events:none;background-color:var(--clr-bg);width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.nf-mesh-blob{filter:blur(90px);will-change:transform,opacity;border-radius:50%;animation:15s ease-in-out infinite alternate nf-mesh-float;position:absolute}.nf-blob-1{background:var(--clr-accent);opacity:.08;width:50vw;height:50vw;animation-duration:20s;top:-20%;left:-10%}.nf-blob-2{opacity:.15;background:#4a4a4a;width:40vw;height:40vw;animation-duration:18s;animation-delay:-5s;bottom:-10%;right:-5%}.nf-blob-3{background:var(--clr-text-primary);opacity:.04;width:60vw;height:60vw;animation-duration:25s;animation-delay:-10s;top:40%;left:30%}.nf-mesh-overlay{background:radial-gradient(circle at center,transparent 0%,var(--clr-bg)100%);opacity:.8;z-index:1;position:absolute;inset:0}@keyframes nf-mesh-float{0%{transform:scale(1)translate(0)rotate(0)}33%{transform:scale(1.1)translate(5%,2%)rotate(5deg)}66%{transform:scale(.9)translate(-2%,5%)rotate(-5deg)}to{transform:scale(1.05)translate(-5%,-2%)rotate(2deg)}}.nf-content{z-index:10;text-align:center;align-items:center;gap:var(--space-lg);flex-direction:column;display:flex;position:relative}.nf-text-group{align-items:center;gap:var(--space-sm);flex-direction:column;display:flex}.nf-404-glitch{font-family:var(--font-pxlfy);background:linear-gradient(180deg,var(--clr-text-primary)0%,#e9e9e933 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 40px #ffffff1a);opacity:0;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(8rem,20vw,15rem);font-weight:700;line-height:.85;animation:1s cubic-bezier(.16,1,.3,1) forwards nf-slide-up;transform:translateY(40px)}.nf-subtitle{font-size:var(--font-lg);color:var(--clr-text-primary);letter-spacing:-.01em;opacity:0;margin:0;font-weight:500;animation:1s cubic-bezier(.16,1,.3,1) .2s forwards nf-slide-up;transform:translateY(20px)}.nf-description{font-size:var(--font-sm);color:var(--clr-text-secondary);opacity:0;max-width:400px;margin:0;line-height:1.6;animation:1s cubic-bezier(.16,1,.3,1) .3s forwards nf-slide-up;transform:translateY(20px)}@keyframes nf-slide-up{to{opacity:1;transform:translateY(0)}}.work-gallery-container{margin-top:var(--space-lg);margin-bottom:var(--space-lg)}.work-gallery-container+p{margin-top:var(--space-xs);margin-bottom:var(--space-sm);font-size:var(--font-sm);color:var(--clr-text-secondary);opacity:.75}.work-content p+h4,.work-gallery-container+h4{margin-top:var(--space-xl)}
