:root{--bg-primary:#fafafa;--bg-white:#fff;--bg-subtle:#f5f5f7;--text-primary:#1d1d1f;--text-secondary:#6e6e73;--text-muted:#86868b;--accent-primary:#ff4655;--accent-secondary:#5865f2;--accent-cyan:#00d4ff;--accent-gold:#f5a623;--border-light:#0000000f;--shadow-soft:0 2px 40px #0000000a;--shadow-hover:0 8px 60px #00000014;--font-display:"Space Grotesk",-apple-system,BlinkMacSystemFont,sans-serif;--font-body:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"JetBrains Mono",monospace;--section-gap:clamp(6rem,15vw,12rem);--container-width:1200px;--ease-out-expo:cubic-bezier(.19,1,.22,1);--transition-smooth:.6s var(--ease-out-expo)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);line-height:1.6;overflow-x:hidden}::selection{background:var(--accent-primary);color:#fff}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.03em;font-weight:600;line-height:1.1}.display-xl{letter-spacing:-.04em;font-size:clamp(3.6rem,11vw,9.5rem);font-weight:700;line-height:.95}.display-lg{font-size:clamp(2.5rem,6vw,5rem);font-weight:600}.display-md{font-size:clamp(1.5rem,3vw,2.5rem)}.container{width:100%;max-width:var(--container-width);margin:0 auto;padding:0 2rem}.container--wide{max-width:1400px}section{padding:var(--section-gap)0;position:relative}.nav{z-index:1000;padding:1.5rem 0;transition:all .3s;position:fixed;top:0;left:0;right:0}.nav--scrolled{-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border-light);background:#fffc;padding:1rem 0}.nav__container{justify-content:space-between;align-items:center;display:flex}.nav__logo{font-family:var(--font-display);align-items:center;gap:.25rem;font-size:1.25rem;font-weight:700;display:flex}.nav__logo-dot{background:var(--accent-primary);border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}}.nav__links{gap:3rem;display:flex}.nav__link{color:var(--text-secondary);font-size:.875rem;font-weight:500;transition:color .2s;position:relative}.nav__link:hover{color:var(--text-primary)}.nav__link:after{content:"";background:var(--accent-primary);width:0;height:2px;transition:width .3s var(--ease-out-expo);position:absolute;bottom:-4px;left:0}.nav__link:hover:after{width:100%}.nav__cta{background:var(--text-primary);color:#fff;border-radius:100px;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;transition:all .3s}.nav__cta:hover{background:var(--accent-primary);transform:translateY(-2px)}@media (max-width:768px){.nav__links{display:none}}.quantum-canvas{pointer-events:none;z-index:0;width:100%;height:100%;position:fixed;top:0;left:0}.hero{align-items:center;min-height:100vh;padding-top:6rem;display:flex;position:relative;overflow:hidden}.hero__content{z-index:1;padding:4rem 0;position:relative}.hero__intro{align-items:center;gap:.75rem;margin-bottom:2rem;display:flex}.hero__status{background:var(--bg-white);border:1px solid var(--border-light);color:var(--text-secondary);box-shadow:var(--shadow-soft);border-radius:100px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;display:inline-flex}.hero__status-dot{background:#22c55e;border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse-dot}.hero__title{margin-bottom:1.5rem}.hero__title-line{display:block}.hero__pokeball-bg{z-index:-1;pointer-events:none;background:radial-gradient(circle,#ff46550d 0%,#0000 70%);width:300px;height:300px;animation:10s ease-in-out infinite float-slow;position:absolute;top:10%;right:5%}@keyframes float-slow{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-30px)rotate(10deg)}}.pokeball-icon{opacity:.3;background:#fff;border:4px solid #333;border-radius:50%;width:100px;height:100px;position:relative;overflow:hidden}.pokeball-icon:before{content:"";background:#ff4655;border-bottom:4px solid #333;width:100%;height:50%;position:absolute;top:0;left:0}.pokeball-icon:after{content:"";z-index:10;background:#fff;border:4px solid #333;border-radius:50%;width:25px;height:25px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero__scroll-icon{opacity:.6;width:24px;height:24px;margin:0 auto .5rem}.hidden-leaf-symbol{clip-path:polygon(50% 0%,100% 30%,100% 70%,50% 100%,0% 70%,0% 30%);background:currentColor;width:20px;height:20px;position:relative}.hidden-leaf-symbol:after{content:"";border:1.5px solid #fff;border-radius:50%;width:8px;height:8px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero__title-accent{color:var(--accent-primary)}.hero__title-dot{color:var(--accent-primary);animation:2s ease-in-out infinite pulse-dot;display:inline-block}.hero__subtitle-wrapper{cursor:pointer;margin-bottom:2rem;position:relative}.hero__subtitle-hint{color:var(--text-muted);font-size:.875rem;font-family:var(--font-mono);transition:opacity .3s}.hero__subtitle-wrapper--revealed .hero__subtitle-hint{opacity:0;position:absolute}.hero__subtitle{color:var(--text-secondary);opacity:0;max-width:600px;transition:all .5s var(--ease-out-expo);font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:400;position:absolute;top:0;transform:translateY(10px)}.hero__subtitle-wrapper--revealed .hero__subtitle{opacity:1;position:relative;transform:translateY(0)}.hero__stats{gap:4rem;margin-top:4rem;display:flex}.hero__stat{position:relative}.hero__stat-value{font-family:var(--font-display);color:var(--text-primary);font-size:clamp(2.5rem,4vw,3.5rem);font-weight:700;line-height:1}.hero__stat-label{color:var(--text-muted);margin-top:.5rem;font-size:.875rem}.hero__cta-group{gap:1rem;margin-top:3rem;display:flex}.btn{transition:all var(--transition-smooth);border-radius:100px;justify-content:center;align-items:center;gap:.5rem;padding:1rem 2rem;font-size:.9rem;font-weight:600;display:inline-flex}.btn--primary{background:var(--text-primary);color:#fff}.btn--primary:hover{background:var(--accent-primary);transform:translateY(-3px);box-shadow:0 10px 40px #ff46554d}.btn--ghost{color:var(--text-primary);border:1.5px solid var(--border-light);background:0 0}.btn--ghost:hover{border-color:var(--text-primary);transform:translateY(-3px)}.hero__scroll{color:var(--text-muted);text-transform:uppercase;letter-spacing:.2em;flex-direction:column;align-items:center;gap:.5rem;font-size:.75rem;display:flex;position:absolute;bottom:3rem;left:50%;transform:translate(-50%)}.hero__scroll-line{background:linear-gradient(to bottom,var(--text-muted),transparent);width:1px;height:60px;animation:2s ease-in-out infinite scroll-line}@keyframes scroll-line{0%,to{opacity:1;transform:scaleY(1)}50%{opacity:.5;transform:scaleY(.5)}}.about{background:var(--bg-white)}.about__grid{grid-template-columns:1fr 1fr;align-items:center;gap:6rem;display:grid}.about__visual{position:relative}.about__image-wrapper{aspect-ratio:4/5;border-radius:2rem;position:relative;overflow:hidden}.about__image{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-smooth)}.about__image-wrapper:hover .about__image{transform:scale(1.05)}.about__float-badge{background:var(--bg-white);box-shadow:var(--shadow-hover);border-radius:1rem;align-items:center;gap:1rem;padding:1.5rem 2rem;display:flex;position:absolute;bottom:2rem;right:-2rem}.about__float-icon{font-size:2rem}.about__float-text{font-weight:600}.about__float-sub{color:var(--text-muted);font-size:.875rem}.about__content{flex-direction:column;gap:2rem;display:flex}.about__eyebrow{font-family:var(--font-mono);color:var(--accent-primary);text-transform:uppercase;letter-spacing:.2em;font-size:.875rem}.about__title{font-size:clamp(2rem,4vw,3rem)}.about__text{color:var(--text-secondary);font-size:1.125rem;line-height:1.8}.about__highlight{color:var(--text-primary);font-weight:500}.about__tags{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.about__tag{background:var(--bg-subtle);color:var(--text-secondary);border-radius:100px;padding:.5rem 1rem;font-size:.875rem;transition:all .2s}.about__tag:hover{background:var(--text-primary);color:#fff}@media (max-width:968px){.about__grid{grid-template-columns:1fr;gap:3rem}}.skills{background:var(--bg-primary);overflow:hidden}.skills__header{text-align:center;margin-bottom:6rem}.skills{position:relative;overflow:hidden}.skills__header{text-align:center;z-index:10;margin-bottom:2rem;position:relative}.skills__eyebrow{font-family:var(--font-mono);color:var(--accent-primary);text-transform:uppercase;letter-spacing:.2em;margin-bottom:1rem;font-size:.875rem}.skills__title{margin-bottom:1rem;font-size:clamp(2.5rem,5vw,4rem)}.skills__subtitle{color:var(--text-secondary);font-size:1.125rem}.skills__view-toggle{z-index:20;justify-content:center;align-items:center;gap:1.5rem;margin-bottom:3rem;display:flex;position:relative}.pokeball-toggle{cursor:pointer;background:#fff;border:3px solid #333;border-radius:50%;width:60px;height:60px;transition:transform .3s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden;box-shadow:0 4px 15px #0000001a}.pokeball-toggle:hover{transform:rotate(20deg)scale(1.1)}.pokeball-toggle:before{content:"";background:red;border-bottom:3px solid #333;width:100%;height:50%;position:absolute;top:0;left:0}.pokeball-toggle__button{z-index:10;background:#fff;border:3px solid #333;border-radius:50%;width:15px;height:15px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pokeball-toggle__button:after{content:"";border:1px solid #333;border-radius:50%;width:5px;height:5px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pokeball-toggle--active{animation:.5s ease-in-out pokeball-shake}@keyframes pokeball-shake{0%,to{transform:rotate(0)}25%{transform:rotate(-15deg)}75%{transform:rotate(15deg)}}@keyframes shake{0%{transform:translate(1px,1px)rotate(0)}10%{transform:translate(-1px,-2px)rotate(-1deg)}20%{transform:translate(-3px)rotate(1deg)}30%{transform:translate(3px,2px)rotate(0)}40%{transform:translate(1px,-1px)rotate(1deg)}50%{transform:translate(-1px,2px)rotate(-1deg)}60%{transform:translate(-3px,1px)rotate(0)}70%{transform:translate(3px,1px)rotate(-1deg)}80%{transform:translate(-1px,-1px)rotate(1deg)}90%{transform:translate(1px,2px)rotate(0)}to{transform:translate(1px,-2px)rotate(-1deg)}}@keyframes energy-pulse{0%{filter:drop-shadow(0 0 15px #f5a623cc)}50%{filter:drop-shadow(0 0 40px #f5a623)drop-shadow(0 0 10px #ff465580)}to{filter:drop-shadow(0 0 15px #f5a623cc)}}@keyframes aura-rise{0%{opacity:0;transform:translateY(0)scale(1)}50%{opacity:.6}to{opacity:0;transform:translateY(-50px)scale(1.2)}}.about__image-wrapper--super{box-shadow:none;border:none;position:relative;overflow:visible}.about__image-wrapper--super:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(circle,#f5a62333 0%,#f5a62300 70%);border-radius:50%;animation:2s ease-out infinite aura-rise;position:absolute;inset:-20px}.about__image--shake{filter:drop-shadow(0 0 20px #f5a623);object-fit:contain;animation:.65s infinite shake,1.5s ease-in-out infinite energy-pulse}.projects-page{min-height:100vh;padding-top:8rem;padding-bottom:4rem}.projects-page__header{text-align:center;margin-bottom:4rem}.projects-page__title{font-size:clamp(3rem,6vw,5rem);font-family:var(--font-display);margin-bottom:1rem;font-weight:700}.projects-page__title-highlight{color:var(--accent-primary)}.projects-page__subtitle{color:var(--text-secondary);max-width:600px;margin:0 auto;font-size:1.125rem}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;display:grid}.holo-card{background:var(--bg-white);box-shadow:var(--shadow-soft);transform-style:preserve-3d;border:1px solid var(--border-light);border-radius:1.5rem;transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:block;position:relative;overflow:hidden}.holo-card:hover{border-color:#0000;transform:translateY(-10px)scale(1.02);box-shadow:0 20px 40px #0000001a}.holo-card__content{z-index:2;background:var(--bg-white);flex-direction:column;height:100%;display:flex;position:relative}.holo-card__image-wrapper{aspect-ratio:16/9;background:var(--bg-subtle);position:relative;overflow:hidden}.holo-card__image-wrapper--fallback:before{content:"Image Preview";width:100%;height:100%;color:var(--text-muted);font-family:var(--font-mono);justify-content:center;align-items:center;font-size:.875rem;display:flex}.holo-card__image{object-fit:cover;width:100%;height:100%;transition:transform .5s}.holo-card:hover .holo-card__image{transform:scale(1.1)}.holo-card__info{flex-direction:column;flex:1;gap:1rem;padding:1.5rem;display:flex}.holo-card__tags{flex-wrap:wrap;gap:.5rem;display:flex}.holo-card__tag{color:var(--accent-secondary);background:#5865f21a;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.holo-card__title{font-size:1.25rem;font-weight:700}.holo-card__desc{color:var(--text-secondary);font-size:.875rem;line-height:1.6}.holo-card__tech{border-top:1px solid var(--border-light);flex-wrap:wrap;gap:.5rem;margin-top:auto;padding-top:1rem;display:flex}.holo-card__tech-item{font-family:var(--font-mono);color:var(--text-muted);font-size:.75rem}.holo-card__glare{opacity:0;z-index:3;pointer-events:none;mix-blend-mode:overlay;background:radial-gradient(circle at 50% -20%,#fff6 0%,#0000 60%);width:100%;height:100%;transition:opacity .3s;position:absolute;top:0;left:0}.holo-card:hover .holo-card__glare{opacity:1}.holo-card__shine{opacity:0;z-index:1;pointer-events:none;background:linear-gradient(115deg,#0000 0%,#ff46550d 30%,#00d4ff0d 70%,#0000 100%);transition:opacity .4s;position:absolute;inset:0}.project-detail{padding-top:8rem;padding-bottom:6rem}.project-hero{text-align:center;margin-bottom:4rem}.back-link{color:var(--text-muted);margin-bottom:2rem;font-size:.875rem;transition:color .2s;display:inline-block}.back-link:hover{color:var(--accent-primary)}.project-hero__title{margin-bottom:1.5rem;font-size:clamp(3rem,6vw,5rem)}.project-hero__subtitle{color:var(--text-secondary);max-width:700px;margin:0 auto 2rem;font-size:1.25rem}.project-hero__tags{justify-content:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.project-hero__tag{color:var(--accent-primary);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;font-size:.875rem}.project-hero__actions{justify-content:center;gap:1rem;display:flex}.project-grid{grid-template-columns:2fr 1fr;gap:4rem;display:grid}@media (max-width:900px){.project-grid{grid-template-columns:1fr}}.section-title{margin-top:3rem;margin-bottom:1.5rem;font-size:1.75rem}.section-title:first-child{margin-top:0}.project-text{color:var(--text-secondary);margin-bottom:2rem;font-size:1.125rem;line-height:1.8}.feature-list{list-style:none}.feature-item{border-bottom:1px solid var(--border-light);align-items:flex-start;gap:.75rem;padding:1rem 0;display:flex}.feature-item:before{content:"✓";color:var(--accent-primary);font-weight:700}.project-sidebar{flex-direction:column;gap:2rem;display:flex}.tech-stack-card,.meta-card{background:var(--bg-subtle);border-radius:1.5rem;padding:2rem}.sidebar-title{margin-bottom:1rem;font-size:1.25rem}.tech-tags{flex-wrap:wrap;gap:.5rem;display:flex}.tech-tag{background:var(--bg-white);color:var(--text-secondary);border:1px solid var(--border-light);border-radius:100px;padding:.5rem 1rem;font-size:.875rem}.meta-item{border-bottom:1px solid #0000000d;justify-content:space-between;padding:.75rem 0;display:flex}.meta-item:last-child{border-bottom:none}.meta-label{color:var(--text-muted)}.meta-value{font-weight:500}.projects-gh-page{background:var(--bg-primary);min-height:100vh;padding-top:8rem;padding-bottom:4rem}.projects-gh-layout{grid-template-columns:280px 1fr;gap:3rem;display:grid}@media (max-width:900px){.projects-gh-layout{grid-template-columns:1fr}}.gh-sidebar{height:fit-content;position:sticky;top:6rem}.gh-profile{flex-direction:column;gap:1rem;display:flex}.gh-avatar{border:1px solid var(--border-light);object-fit:cover;border-radius:50%;width:280px;height:280px}.gh-name{font-size:1.5rem;font-weight:600;line-height:1}.gh-username{color:var(--text-secondary);font-size:1.25rem;font-weight:300}.gh-bio{color:var(--text-primary);font-size:1rem;line-height:1.5}.gh-tabs{border-bottom:1px solid var(--border-light);gap:2rem;margin-bottom:1.5rem;display:flex}.gh-tab{color:var(--text-secondary);cursor:pointer;align-items:center;gap:.5rem;padding-bottom:.75rem;font-size:.9rem;font-weight:500;display:flex;position:relative}.gh-tab.active{color:var(--text-primary);font-weight:600}.gh-tab.active:after{content:"";background:var(--accent-secondary);width:100%;height:2px;position:absolute;bottom:-1px;left:0}.gh-badge{background:var(--bg-subtle);border-radius:100px;padding:.1rem .5rem;font-size:.75rem}.gh-repo-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.repo-card{border:1px solid var(--border-light);background:var(--bg-white);border-radius:6px;flex-direction:column;height:100%;padding:1.5rem;transition:all .2s;display:flex}.repo-card:hover{box-shadow:var(--shadow-soft);border-color:var(--accent-secondary);transform:translateY(-2px)}.repo-card__header{align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.repo-card__icon{color:var(--text-secondary)}.repo-card__title{color:var(--accent-secondary);font-size:1rem;font-weight:600}.repo-card__visibility{border:1px solid var(--border-light);color:var(--text-secondary);border-radius:100px;margin-left:auto;padding:.1rem .5rem;font-size:.75rem}.repo-card__desc{color:var(--text-secondary);flex:1;margin-bottom:1.5rem;font-size:.875rem;line-height:1.5}.repo-card__footer{color:var(--text-muted);align-items:center;gap:1rem;font-size:.75rem;display:flex}.repo-card__meta{align-items:center;gap:1rem;display:flex}.repo-language{align-items:center;gap:.25rem;display:flex}.repo-language-color{border-radius:50%;width:12px;height:12px}.repo-stat{align-items:center;gap:.25rem;display:flex}.repo-stat:hover{color:var(--accent-secondary)}.toggle-label--active{opacity:1;color:var(--accent-primary);font-weight:600}.skills__scouter{z-index:50;position:absolute;top:10rem;right:2rem}.scouter{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00ff8808;border-left:3px solid #0f8;border-radius:0 1.25rem 1.25rem 0;width:260px;padding:1.25rem;position:relative;overflow:hidden;box-shadow:0 0 40px #00ff8814}.scouter:before{content:"";pointer-events:none;z-index:2;background:linear-gradient(#12101000 50%,#0000001a 50%) 0 0/100% 3px,linear-gradient(90deg,#ff000008,#00ff0003,#0000ff08) 0 0/3px 100%;position:absolute;inset:0}.scouter__target-box{opacity:.4;border-top:2px solid #0f8;border-left:2px solid #0f8;width:20px;height:20px;position:absolute;top:12px;left:12px}.scouter__target-box--br{border:2px solid #0f8;border-top:none;border-left:none;inset:auto 12px 12px auto}.scouter__scanline{z-index:3;background:#0f86;width:100%;height:2px;animation:4s linear infinite scouter-scan;position:absolute;top:0;left:0;box-shadow:0 0 15px #0f8}@keyframes scouter-scan{0%{top:-5%}to{top:105%}}.scouter__content{z-index:10;position:relative}.scouter__tag{font-family:var(--font-mono);color:#0f8;text-transform:uppercase;letter-spacing:.15em;justify-content:space-between;margin-bottom:.75rem;font-size:.6rem;animation:3s infinite scouter-flicker;display:flex}@keyframes scouter-flicker{0%,19%,21%,23%,25%,54%,56%,to{opacity:1}20%,22%,24%,55%{opacity:.3}}.scouter__power-wrap{text-align:center;margin:1rem 0}.scouter__label{font-family:var(--font-mono);color:#0f8;opacity:.5;margin-bottom:.2rem;font-size:.6rem}.scouter__value{font-family:var(--font-mono);color:#0f8;text-shadow:0 0 15px #0f89;width:114%;font-size:1.5rem;font-weight:700}.scouter__data-feed{font-family:var(--font-mono);color:#00ff88b3;border-top:1px solid #0f83;height:65px;margin-top:1rem;padding-top:.5rem;font-size:.55rem;line-height:1.5;overflow:hidden}.skills__orbital{width:100%;max-width:800px;height:600px;transition:opacity .5s var(--transition-smooth),transform .5s var(--transition-smooth);justify-content:center;align-items:center;margin:0 auto;display:flex;position:relative}.skills__nucleus{background:var(--text-primary);color:#fff;z-index:10;border:4px solid var(--bg-white);width:120px;height:120px;font-family:var(--font-display);letter-spacing:.05em;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex;position:relative;box-shadow:0 0 60px #0003}.skills__orbit-ring{border:1px solid #0000000f;border-radius:50%;position:absolute}.skills__orbit-ring--1{width:260px;height:260px}.skills__orbit-ring--2{width:440px;height:440px}.skills__orbit-ring--3{width:620px;height:620px}.skill-card-pokemon__bar:before{content:"";z-index:2;opacity:0;background:#ffffff4d;position:absolute;inset:0}.skills__electron{background:var(--bg-white);border:1.5px solid var(--border-light);cursor:pointer;z-index:5;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;transition:border-color .2s,box-shadow .2s;display:flex;position:absolute;box-shadow:0 4px 20px #0000000f}.skills__electron:hover{border-color:var(--accent-primary);z-index:50;box-shadow:0 8px 30px #ff465526}.skills__electron:hover .skills__electron-icon{filter:drop-shadow(0 0 8px var(--accent-primary));transform:scale(1.2)}.skills__electron-icon{font-size:1.5rem;transition:transform .2s,filter .2s}.skills__pokedex-container{max-width:1100px;margin:0 auto;transition:opacity .5s}.skills__types-nav{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1rem;margin-bottom:3.5rem;display:flex}.skills__type-pill{background:var(--bg-white);border:2px solid var(--border-light);color:var(--text-secondary);cursor:pointer;border-radius:100px;padding:.6rem 1.75rem;font-size:.85rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1)}.skills__type-pill--active{color:#fff;border-color:#0000;transform:translateY(-2px);box-shadow:0 8px 20px #00000014}.skills__pokedex-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem;margin-top:2rem;display:grid}.skill-card-pokemon{background:var(--bg-white);border:2px solid var(--border-light);opacity:0;border-radius:1.5rem;padding:1.5rem;transition:all .3s cubic-bezier(.175,.885,.32,1.275);animation:.6s ease-out forwards card-appear;position:relative;overflow:hidden;transform:translateY(30px)}.skill-card-pokemon:hover{border-color:var(--card-color);transform:translateY(-10px)scale(1.02);box-shadow:0 20px 40px #0000001a}@keyframes card-appear{to{opacity:1;transform:translateY(0)}}.skill-card-pokemon__header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.skill-card-pokemon__number{font-family:var(--font-mono);color:var(--text-muted);font-size:.75rem;font-weight:600}.skill-card-pokemon__type{text-transform:uppercase;color:#fff;background:var(--card-color);letter-spacing:.05em;border-radius:100px;padding:.35rem .75rem;font-size:.65rem;font-weight:700;box-shadow:0 4px 10px #0000001a}.skill-card-pokemon__icon-wrapper{background:linear-gradient(135deg,var(--bg-subtle)0%,var(--bg-primary)100%);z-index:1;border-radius:50%;justify-content:center;align-items:center;width:90px;height:90px;margin:0 auto 1.5rem;display:flex;position:relative}.skill-card-pokemon__icon-wrapper:before{content:"";background:linear-gradient(135deg,var(--card-color),transparent);opacity:.3;z-index:-1;border-radius:50%;transition:opacity .3s;position:absolute;inset:-4px}.skill-card-pokemon:hover .skill-card-pokemon__icon-wrapper:before{opacity:.8}.skill-card-pokemon__icon{color:var(--card-color);filter:drop-shadow(0 4px 6px #0000001a);font-size:3rem}.skill-card-pokemon__name{text-align:center;font-size:1.25rem;font-weight:700;font-family:var(--font-display);margin-bottom:1.5rem}.skill-card-pokemon__stats{background:var(--bg-white);border-radius:1rem;margin-top:auto;padding:1rem}.skill-card-pokemon__stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;margin-bottom:.5rem;font-size:.7rem;font-weight:600;display:flex}.skill-card-pokemon__bar{background:#0000000d;border-radius:10px;height:8px;position:relative;overflow:hidden}.skill-card-pokemon__bar:after{content:none}.skill-card-pokemon__bar-fill{background:linear-gradient(90deg,var(--card-color)0%,white 120%);border-radius:10px;width:0;height:100%;transition:width 1s cubic-bezier(.4,0,.2,1);position:relative;box-shadow:0 0 10px #0000001a}.skill-card-pokemon__bar-fill:after{content:"";background:linear-gradient(#ffffff4d 0%,#0000 100%);border-radius:10px;position:absolute;inset:0}.skills__ninja-rank{justify-content:center;margin-top:5rem;display:flex}.skills__ninja-badge{text-align:center;background:linear-gradient(135deg,#1a1a2e 0%,#16213e 100%);border:2px solid #f90;border-radius:1.5rem;padding:2.5rem 4rem;transition:transform .3s;position:relative;overflow:hidden;box-shadow:0 20px 50px #0003}.skills__ninja-badge:hover{transform:translateY(-5px)}.skills__ninja-badge:before{content:"";background:radial-gradient(circle,#ff99001a 0%,#0000 60%);width:200%;height:200%;animation:4s ease-in-out infinite ninja-glow;position:absolute;top:-50%;left:-50%}@keyframes ninja-glow{0%,to{opacity:.5;transform:translate(0)scale(1)}50%{opacity:.8;transform:translate(-20px,-20px)scale(1.1)}}.skills__ninja-symbol{color:#f90;text-shadow:0 0 20px #f909;z-index:1;margin-bottom:.5rem;font-size:3.5rem;position:relative}.skills__ninja-title{color:#f90;text-transform:uppercase;letter-spacing:.1em;z-index:1;font-size:1.5rem;font-weight:800;position:relative}.skills__ninja-subtitle{color:#fff9;font-size:.9rem;font-family:var(--font-mono);z-index:1;margin-top:.5rem;position:relative}.skills--hidden{opacity:0;pointer-events:none;display:none!important}@media (max-width:768px){.skills__scouter{width:fit-content;margin:1rem auto;position:relative;top:0;right:0}.scouter{width:100%;padding:.8rem}.scouter__value{font-size:1.4rem}.scouter__data-feed{height:35px;margin-top:.5rem;font-size:.5rem}.scouter__tag{margin-bottom:.4rem}}.experience{background:var(--bg-white)}.experience__header{margin-bottom:4rem}.experience__eyebrow{font-family:var(--font-mono);color:var(--accent-primary);text-transform:uppercase;letter-spacing:.2em;margin-bottom:1rem;font-size:.875rem}.experience__title{font-size:clamp(2.5rem,5vw,4rem)}.experience__timeline{max-width:800px;position:relative}.experience__line{background:linear-gradient(to bottom,var(--accent-primary),var(--border-light));width:2px;position:absolute;top:0;bottom:0;left:0}.experience__item{padding-bottom:4rem;padding-left:3rem;position:relative}.experience__item:last-child{padding-bottom:0}.experience__item--education .experience__dot{background:var(--bg-white);color:#f5a623;border-color:#f5a623;justify-content:center;align-items:center;width:40px;height:40px;font-size:1rem;display:flex;left:-19px;box-shadow:0 0 0 4px #f5a62333}.experience__item--education .experience__card{border-left:2px solid #f5a623}.experience__dot{background:var(--accent-primary);border:3px solid var(--bg-white);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1rem;display:flex;position:absolute;top:0;left:-19px;box-shadow:0 0 0 4px #ff465533}.experience__line{left:2px}.experience__card{background:var(--bg-subtle);transition:all var(--transition-smooth);border-radius:1rem;padding:2rem}.experience__card:hover{background:var(--bg-white);box-shadow:var(--shadow-hover);transform:translate(10px)}.experience__role{margin-bottom:.25rem;font-size:1.25rem;font-weight:600}.experience__company{color:var(--accent-primary)}.experience__meta{color:var(--text-muted);margin-bottom:1rem;font-size:.875rem}.experience__description{color:var(--text-secondary);margin-bottom:1rem;line-height:1.7}.experience__achievements{flex-direction:column;gap:.5rem;display:flex}.experience__achievement{color:var(--text-secondary);align-items:flex-start;gap:.5rem;font-size:.9rem;display:flex}.experience__achievement:before{content:"→";color:var(--accent-primary);flex-shrink:0}.projects{background:var(--bg-primary)}.projects__header{text-align:center;margin-bottom:4rem}.projects__eyebrow{font-family:var(--font-mono);color:var(--accent-primary);text-transform:uppercase;letter-spacing:.2em;margin-bottom:1rem;font-size:.875rem}.projects__title{margin-bottom:1rem;font-size:clamp(2.5rem,5vw,4rem)}.projects__bento{grid-template-columns:repeat(12,1fr);grid-auto-rows:minmax(200px,auto);gap:1.5rem;display:grid}.project-card{background:var(--bg-white);transition:all var(--transition-smooth);cursor:pointer;border-radius:1.5rem;position:relative;overflow:hidden}.project-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-8px)}.project-card--featured{grid-area:span 2/span 8}.project-card--medium{grid-area:span 2/span 4}.project-card--small{grid-column:span 4}.project-card__image{background:linear-gradient(135deg,var(--bg-subtle)0%,var(--bg-primary)100%);position:absolute;inset:0}.project-card__image img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-smooth)}.project-card:hover .project-card__image img{transform:scale(1.05)}.project-card__overlay{opacity:0;background:linear-gradient(#0000 40%,#000c 100%);transition:opacity .3s;position:absolute;inset:0}.project-card:hover .project-card__overlay{opacity:1}.project-card__content{color:#fff;opacity:0;padding:2rem;transition:all .3s;position:absolute;bottom:0;left:0;right:0;transform:translateY(20px)}.project-card:hover .project-card__content{opacity:1;transform:translateY(0)}.project-card__tag{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:100px;margin-bottom:.75rem;padding:.25rem .75rem;font-size:.75rem;display:inline-block}.project-card__title{margin-bottom:.5rem;font-size:1.5rem;font-weight:600}.project-card__description{opacity:.9;font-size:.9rem;line-height:1.6}.project-card__static{background:var(--bg-white);padding:2rem;transition:opacity .3s;position:absolute;bottom:0;left:0;right:0}.project-card:hover .project-card__static{opacity:0}.project-card__static-title{margin-bottom:.25rem;font-size:1.25rem;font-weight:600}.project-card__static-tech{color:var(--text-muted);font-size:.8rem}@media (max-width:968px){.projects__bento{grid-template-columns:1fr}.project-card--featured,.project-card--medium,.project-card--small{grid-column:span 1;min-height:300px}}.achievements{background:linear-gradient(180deg,var(--bg-white)0%,var(--bg-subtle)100%);position:relative;overflow:hidden}.achievements__header{text-align:center;margin-bottom:3rem}.achievements__eyebrow{font-family:var(--font-mono);color:var(--accent-primary);text-transform:uppercase;letter-spacing:.2em;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.875rem;display:inline-flex}.achievements__title{margin-bottom:2rem;font-size:clamp(2rem,4vw,3rem)}.achievements__xp-bar{max-width:400px;margin:0 auto}.achievements__xp-label{color:var(--text-secondary);justify-content:space-between;margin-bottom:.5rem;font-size:.875rem;display:flex}.achievements__xp-value{font-family:var(--font-mono);color:var(--accent-primary);font-weight:600}.achievements__xp-track{background:var(--border-light);border-radius:4px;height:8px;overflow:hidden}.achievements__xp-fill{background:linear-gradient(90deg,var(--accent-primary),#ff6b6b);border-radius:4px;height:100%;animation:2s ease-out forwards xp-fill}@keyframes xp-fill{0%{width:0}}.achievements__game-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:3rem;display:grid}.achievement-tile{background:var(--bg-white);cursor:pointer;border:2px solid #0000;border-radius:1rem;padding:1.5rem;transition:all .3s;position:relative;overflow:hidden}.achievement-tile:before{content:"";background:linear-gradient(135deg,var(--accent-primary),var(--accent-cyan));z-index:-1;opacity:0;border-radius:1rem;transition:opacity .3s;position:absolute;inset:-2px}.achievement-tile:hover:before,.achievement-tile--active:before{opacity:1}.achievement-tile__glow{opacity:0;background:radial-gradient(circle,#ff46551a 0%,#0000 50%);width:200%;height:200%;transition:opacity .3s;position:absolute;top:-50%;left:-50%}.achievement-tile:hover .achievement-tile__glow{opacity:1}.achievement-tile__content{z-index:1;position:relative}.achievement-tile__icon-wrapper{background:linear-gradient(135deg,var(--accent-primary),#ff6b6b);border-radius:12px;justify-content:center;align-items:center;width:50px;height:50px;margin-bottom:1rem;display:flex;position:relative}.achievement-tile__icon{color:#fff;font-size:1.5rem}.achievement-tile__sparkle{background:var(--accent-gold);border-radius:50%;width:15px;height:15px;animation:2s ease-in-out infinite sparkle;position:absolute;top:-5px;right:-5px}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.3)}}.achievement-tile__title{margin-bottom:.25rem;font-size:1.1rem;font-weight:600}.achievement-tile__description{color:var(--text-muted);margin-bottom:1rem;font-size:.85rem}.achievement-tile__footer{border-top:1px solid var(--border-light);justify-content:space-between;align-items:center;padding-top:.75rem;display:flex}.achievement-tile__year{color:var(--text-muted);font-size:.75rem}.achievement-tile__xp{font-family:var(--font-mono);color:var(--accent-primary);background:#ff46551a;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.achievement-tile__unlock-flash{background:linear-gradient(135deg,#0000,#ffffff4d,#0000);transition:transform .6s;position:absolute;inset:0;transform:translate(-100%)}.achievement-tile:hover .achievement-tile__unlock-flash{transform:translate(100%)}.publications{background:var(--bg-primary)}.publications__header{margin-bottom:3rem}.publications__eyebrow{font-family:var(--font-mono);color:var(--accent-primary);text-transform:uppercase;letter-spacing:.2em;margin-bottom:1rem;font-size:.875rem}.publications__title{font-size:clamp(2rem,4vw,3rem)}.publications__list{flex-direction:column;gap:1rem;max-width:800px;display:flex}.publication-item{background:var(--bg-white);border-radius:1rem;justify-content:space-between;align-items:center;padding:1.5rem 2rem;transition:all .3s;display:flex}.publication-item:hover{box-shadow:var(--shadow-soft);transform:translate(10px)}.publication-item__title{margin-bottom:.25rem;font-size:1.1rem;font-weight:500}.publication-item__meta{color:var(--text-muted);font-size:.875rem}.publication-item__arrow{color:var(--text-muted);font-size:1.5rem;transition:all .3s}.publication-item:hover .publication-item__arrow{color:var(--accent-primary);transform:translate(5px)}.contact{background:var(--text-primary);color:#fff;text-align:center}.contact__content{max-width:700px;margin:0 auto}.contact__eyebrow{font-family:var(--font-mono);color:var(--accent-primary);text-transform:uppercase;letter-spacing:.2em;margin-bottom:1rem;font-size:.875rem}.contact__title{margin-bottom:1.5rem;font-size:clamp(2.5rem,6vw,4.5rem)}.contact__text{color:#ffffffb3;margin-bottom:3rem;font-size:1.125rem;line-height:1.8}.contact__cta{background:var(--accent-primary);color:#fff;transition:all var(--transition-smooth);border-radius:100px;align-items:center;gap:.75rem;padding:1.25rem 2.5rem;font-size:1rem;font-weight:600;display:inline-flex}.contact__cta:hover{color:var(--text-primary);background:#fff;transform:translateY(-3px);box-shadow:0 20px 60px #ff465566}.contact__links{justify-content:center;gap:1.5rem;margin-top:4rem;display:flex}.contact__link{background:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;font-size:1.25rem;transition:all .3s;display:flex}.contact__link:hover{background:var(--accent-primary);transform:translateY(-5px)}.certifications{background:var(--bg-primary)}.certifications__header{text-align:center;margin-bottom:3rem}.certifications__eyebrow{font-family:var(--font-mono);color:var(--accent-primary);text-transform:uppercase;letter-spacing:.2em;margin-bottom:1rem;font-size:.875rem}.certifications__title{margin-bottom:.5rem;font-size:clamp(2rem,4vw,3rem)}.certifications__subtitle{color:var(--text-muted);font-size:.9rem}.cert-collection{perspective:1000px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.5rem;display:grid}.cert-card-3d{cursor:pointer;perspective:1000px;height:240px}.cert-card-3d__inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.175,.885,.32,1.275);position:relative}.cert-card-3d--flipped .cert-card-3d__inner{transform:rotateY(180deg)}.cert-card-3d__front,.cert-card-3d__back{backface-visibility:hidden;text-align:center;border-radius:1rem;flex-direction:column;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:absolute;inset:0}.cert-card-3d__front{color:#fff;overflow:hidden}.cert-card-3d__shine{background:linear-gradient(135deg,#0000 30%,#fff3 50%,#0000 70%);width:200%;height:200%;animation:3s ease-in-out infinite card-shine;position:absolute;top:-50%;left:-50%;transform:rotate(25deg)}@keyframes card-shine{0%,to{transform:translate(-100%)rotate(25deg)}50%{transform:translate(100%)rotate(25deg)}}.cert-card-3d__collected{color:#22c55e;filter:drop-shadow(0 0 5px #22c55e80);font-size:1.25rem;position:absolute;top:.75rem;right:.75rem}.cert-card-3d__main-icon{filter:drop-shadow(0 5px 10px #0000004d);margin-bottom:1rem;font-size:3rem}.cert-card-3d__title{font-size:.9rem;font-weight:600;line-height:1.3}.cert-card-3d__hint{opacity:.7;margin-top:.5rem;font-size:.7rem;font-style:italic}.cert-card-3d__back{background:var(--bg-white);border:2px solid var(--border-light);transform:rotateY(180deg)}.cert-card-3d__issuer-icon{color:var(--text-primary);margin-bottom:.75rem;font-size:2rem}.cert-card-3d__issuer{margin-bottom:.25rem;font-size:1rem;font-weight:600}.cert-card-3d__date{color:var(--text-muted);margin-bottom:1rem;font-size:.8rem}.cert-card-3d__badge{font-family:var(--font-mono);color:#22c55e;background:#22c55e1a;border:1px solid #22c55e;border-radius:100px;padding:.25rem .75rem;font-size:.7rem;font-weight:600}.cert-card-3d--locked{opacity:.5;cursor:not-allowed}.cert-card-3d__front--locked{background:var(--text-muted)}.cert-card-3d__lock-icon{opacity:.5;margin-bottom:.5rem;font-size:2rem}.cert-card-3d__locked-text{opacity:.7;font-size:.8rem}.footer{background:var(--text-primary);color:#ffffff80;text-align:center;border-top:1px solid #ffffff1a;padding:2rem 0;font-size:.875rem}.footer__accent{color:var(--accent-primary)}@keyframes fade-in-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:fade-in-up .8s var(--ease-out-expo)forwards}.sr-only{clip:rect(0,0,0,0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.project-cover{background:var(--bg-white);width:100%;height:100%;transition:background-color .4s var(--ease-out-expo);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.project-cover:before{content:"";background-image:linear-gradient(var(--border-light)1px,transparent 1px),linear-gradient(90deg,var(--border-light)1px,transparent 1px);opacity:.4;transition:transform .6s var(--ease-out-expo),opacity .4s ease;background-position:50%;background-size:40px 40px;position:absolute;inset:0}.project-cover__content{z-index:2;text-align:center;transition:all .4s var(--ease-out-expo);padding:2rem;position:relative}.project-card--small .project-cover__title{font-size:clamp(1.1rem,2.5vw,1.6rem)}.project-cover__title{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.04em;margin-bottom:.5rem;font-size:clamp(1.4rem,4vw,2.2rem);font-weight:700;line-height:1}.project-cover__dot{color:var(--accent-primary)}.project-cover__description{color:var(--text-secondary);font-size:.875rem;font-family:var(--font-body);opacity:.8;max-width:280px;margin:0 auto}.project-card:hover .project-cover{background-color:var(--bg-subtle)}.project-card:hover .project-cover:before{opacity:.8;transform:scale(1.1)}.project-card:hover .project-cover__title{transition:transform .4s var(--ease-out-expo);transform:translateY(-5px)}.project-card:hover .project-cover__content{opacity:0;filter:blur(5px);transform:scale(.95)}.artifact{z-index:3;opacity:0;width:100px;height:100px;transition:all .6s var(--ease-out-expo);color:var(--text-primary);pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.6)}.project-card:hover .artifact{opacity:1;transform:translate(-50%,-50%)scale(1)}.artifact--dino svg{filter:drop-shadow(0 10px 20px #0000001a);width:60px;height:60px}.project-card:hover .artifact--dino svg{animation:.5s steps(2,end) infinite dino-run}@keyframes dino-run{0%{transform:translateY(0)}50%{transform:translateY(-8px)}}.artifact--core{perspective:1000px}.core-sphere{background:var(--text-primary);z-index:2;border-radius:50%;width:32px;height:32px;animation:2s ease-in-out infinite core-pulse;box-shadow:0 0 30px #0003}.core-ring{border:1px solid var(--border-light);border-radius:50%;animation:8s linear infinite core-orbit;position:absolute}.core-ring:nth-child(2){width:64px;height:64px;transform:rotateX(70deg)}.core-ring:nth-child(3){width:84px;height:84px;animation-duration:12s;transform:rotateY(70deg)}@keyframes core-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.15)}}@keyframes core-orbit{0%{transform:rotate(0)rotateX(70deg)}to{transform:rotate(360deg)rotateX(70deg)}}.artifact--shutter .shutter-view{border:4px solid var(--text-primary);width:80px;height:80px;transition:transform .6s var(--ease-out-expo);border-radius:50%;justify-content:center;align-items:center;display:flex}.artifact--shutter svg{width:60%;height:60%}.project-card:hover .artifact--shutter .shutter-view{animation:shutter-spin 2s var(--ease-out-expo)infinite}@keyframes shutter-spin{0%{transform:rotate(0)}to{transform:rotate(180deg)}}.artifact--link svg{width:60px;height:60px}.project-card:hover .artifact--link svg{animation:4s ease-in-out infinite link-float}@keyframes link-float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-10px)rotate(10deg)}}
