:root{--bg-0: #04050b;--bg-1: #090f24;--bg-2: #12102a;--glass: rgba(255, 255, 255, .05);--glass-stroke: rgba(147, 181, 255, .22);--glass-hover: rgba(255, 255, 255, .09);--text: #e6ecff;--text-dim: #8d9bc4;--text-bright: #f4f7ff;--neon-blue: #66d7ff;--neon-purple: #9f63ff;--neon-green: #4bffcb;--mono: "JetBrains Mono", "Fira Code", "SF Mono", ui-monospace, monospace;--sans: "Space Grotesk", "General Sans", system-ui, sans-serif;--ring: 0 0 0 1px rgba(145, 176, 255, .18), 0 16px 48px rgba(6, 8, 22, .6);--ease-out-expo: cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:auto}html,body,#root{width:100%;min-height:100%}body{font-family:var(--sans);color:var(--text);background:var(--bg-0);overflow-x:hidden;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}button{font-family:inherit}img,video{display:block;max-width:100%}.noise-overlay{position:fixed;inset:0;z-index:999;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:200px}.ambient-bg{position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 55% 45% at 10% 15%,rgba(39,118,255,.18),transparent),radial-gradient(ellipse 50% 40% at 85% 12%,rgba(148,75,255,.16),transparent),radial-gradient(ellipse 45% 35% at 50% 85%,rgba(29,198,176,.1),transparent),linear-gradient(175deg,var(--bg-0),var(--bg-1) 45%,var(--bg-2))}.cursor-dot{width:8px;height:8px;position:fixed;top:-4px;left:-4px;border-radius:50%;background:var(--neon-blue);pointer-events:none;z-index:1000;mix-blend-mode:difference}.cursor-ring{width:44px;height:44px;position:fixed;top:-22px;left:-22px;border-radius:50%;border:1.5px solid rgba(102,215,255,.5);pointer-events:none;z-index:1000;transition:width .35s var(--ease-out-expo),height .35s var(--ease-out-expo),border-color .3s ease}.cursor-ring.hovering{width:64px;height:64px;top:-32px;left:-32px;border-color:#9f63ffb3}.glass{background:linear-gradient(145deg,#ffffff12,#ffffff05);border:1px solid var(--glass-stroke);border-radius:1.25rem;box-shadow:var(--ring);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.loading-screen{position:fixed;inset:0;z-index:500;background:var(--bg-0);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem}.loading-bar-track{width:180px;height:2px;background:#66d7ff26;border-radius:2px;overflow:hidden}.loading-bar-fill{width:0%;height:100%;background:linear-gradient(90deg,var(--neon-blue),var(--neon-purple));border-radius:2px}.loading-name{font-family:var(--mono);font-size:.82rem;color:var(--text-dim);letter-spacing:.18em;text-transform:uppercase}.top-nav{position:fixed;top:1.2rem;left:50%;transform:translate(-50%);width:min(92%,1060px);z-index:100;border-radius:999px;padding:.55rem 1rem .55rem 1.4rem;display:flex;justify-content:space-between;align-items:center}.top-nav .nav-name{font-size:.88rem;font-weight:600;letter-spacing:.06em}.top-nav .nav-actions{display:flex;gap:.55rem}.btn{display:inline-flex;align-items:center;gap:.4rem;border:1px solid rgba(140,178,255,.35);color:var(--text);background:linear-gradient(130deg,#3362ba47,#7549be33);border-radius:999px;padding:.55rem 1.1rem;font-size:.85rem;cursor:pointer;transition:box-shadow .35s var(--ease-out-expo);will-change:transform}.btn:hover{box-shadow:0 8px 28px #5873ff4d}.btn-primary{background:linear-gradient(130deg,#66d7ff4d,#9f63ff40);border-color:#66d7ff73}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-bg{position:absolute;inset:0;z-index:0}.hero-vignette{position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 60% 55% at 50% 50%,rgba(4,5,11,.72),transparent 70%),linear-gradient(to bottom,rgba(4,5,11,.3) 0%,transparent 25%,transparent 75%,rgba(4,5,11,.5) 100%)}.hero-content{position:relative;z-index:2;text-align:center;max-width:900px;padding:0 1.5rem}.hero-name{font-size:clamp(3.5rem,12vw,9.5rem);font-weight:700;line-height:.88;letter-spacing:-.035em;margin-bottom:1.2rem;color:var(--text-bright);text-shadow:0 0 20px rgba(102,215,255,.7),0 0 60px rgba(159,99,255,.4),0 0 100px rgba(102,215,255,.2),0 2px 8px rgba(0,0,0,.9);will-change:transform,opacity,filter}.name-first,.name-last{display:block}.name-last{color:transparent;background:linear-gradient(135deg,var(--neon-blue),var(--neon-purple));background-clip:text;-webkit-background-clip:text;filter:drop-shadow(0 2px 6px rgba(0,0,0,.8))}.hero-eyebrow{font-family:var(--mono);font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:var(--neon-blue);margin-bottom:1.5rem;opacity:0;text-shadow:0 1px 4px rgba(0,0,0,.8)}.hero-tagline{font-size:clamp(1.6rem,4vw,3rem);font-weight:600;line-height:1.05;letter-spacing:-.015em;margin-bottom:1.2rem;text-shadow:0 2px 10px rgba(0,0,0,.85)}.hero-tagline .word{display:inline-block;overflow:hidden;margin-right:.25em;vertical-align:top}.hero-tagline .word-inner{display:inline-block;will-change:transform}.hero-subtitle{font-size:clamp(.95rem,1.6vw,1.15rem);color:var(--text-dim);max-width:52ch;margin:0 auto 2.2rem;line-height:1.65;opacity:0;text-shadow:0 1px 6px rgba(0,0,0,.8)}.hero-cta{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap;opacity:0}.scroll-hint{position:absolute;bottom:2.5rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;z-index:2}.scroll-hint span{font-family:var(--mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim)}.scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,var(--neon-blue),transparent);animation:scroll-pulse 2s ease-in-out infinite}@keyframes scroll-pulse{0%,to{opacity:.3;transform:scaleY(.6)}50%{opacity:1;transform:scaleY(1)}}.section{position:relative;padding:10vh 0}.section-inner{width:min(1100px,90%);margin:0 auto}.section-label{font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--neon-blue);margin-bottom:.6rem}.section-title{font-size:clamp(2rem,5vw,3.6rem);font-weight:700;letter-spacing:-.03em;line-height:1.05;margin-bottom:.5rem}.title-gradient{background:linear-gradient(135deg,var(--neon-blue),var(--neon-purple));-webkit-background-clip:text;background-clip:text;color:transparent;position:relative}.section-subtitle{color:var(--text-dim);font-size:1rem;margin-bottom:3rem;letter-spacing:.02em}#about{position:relative}.about-bg-glow{position:absolute;top:50%;left:30%;width:60vw;height:60vw;max-width:800px;max-height:800px;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(102,215,255,.08) 0%,rgba(159,99,255,.05) 30%,transparent 70%);pointer-events:none;z-index:0;filter:blur(40px)}.about-bento{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:auto auto auto;gap:1.5rem;position:relative;z-index:1}.bento-cell{border-radius:1.5rem;padding:2rem;background:linear-gradient(145deg,#ffffff0d,#ffffff03);box-shadow:inset 0 0 20px #ffffff05,var(--ring);border:1px solid var(--glass-stroke);transition:transform .4s var(--ease-out-expo),border-color .3s ease,box-shadow .4s ease}.bento-cell:hover{transform:translateY(-6px);border-color:#66d7ff66;box-shadow:0 16px 48px #00000080,inset 0 0 30px #66d7ff14}.story-cell{grid-column:1 / 3;grid-row:1 / 3;display:flex;align-items:center;gap:2rem;position:relative;overflow:hidden;padding:2.5rem 3rem}.story-content{flex:1;min-width:0}.story-lead{font-size:1.2rem;line-height:1.85;color:var(--text-bright);margin-bottom:1.5rem}.story-signals{display:flex;flex-wrap:wrap;gap:.5rem}.signal-tag{font-family:var(--mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;padding:.4rem .8rem;border:1px solid rgba(102,215,255,.2);border-radius:999px;color:var(--neon-blue);background:#66d7ff0d;animation:signal-pulse 3s ease-in-out infinite}.signal-tag:nth-child(2){animation-delay:.5s}.signal-tag:nth-child(3){animation-delay:1s}.signal-tag:nth-child(4){animation-delay:1.5s}@keyframes signal-pulse{0%,to{border-color:#66d7ff33;box-shadow:none}50%{border-color:#66d7ff80;box-shadow:0 0 12px #66d7ff26}}.story-orbit{position:relative;width:120px;height:120px;flex-shrink:0}.orbit-ring{position:absolute;inset:0;border-radius:50%;border:1px dashed rgba(102,215,255,.15);animation:spin 25s linear infinite}.orbit-ring:nth-child(2){inset:15px;border-color:#9f63ff26;animation-direction:reverse;animation-duration:18s}.orbit-dot{position:absolute;top:50%;left:50%;width:6px;height:6px;margin:-3px;border-radius:50%;background:var(--neon-blue);box-shadow:0 0 12px var(--neon-blue);animation:glow-breathe 2.5s ease-in-out infinite}@keyframes glow-breathe{0%,to{box-shadow:0 0 8px var(--neon-blue);transform:scale(1)}50%{box-shadow:0 0 20px var(--neon-blue),0 0 40px #66d7ff4d;transform:scale(1.3)}}.about-accent-line{position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,var(--neon-blue),var(--neon-purple),transparent);opacity:.8;animation:shimmer-line 3s ease-in-out infinite}@keyframes shimmer-line{0%{background-position:-200% 0}to{background-position:200% 0}}.highlight{background:linear-gradient(135deg,var(--neon-blue),var(--neon-purple));-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:600}.stats-cell{grid-column:3 / 4;grid-row:1 / 2;display:flex;align-items:center;justify-content:center;padding:1.5rem}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;width:100%}.stat-item{display:flex;flex-direction:column;gap:.4rem;animation:stat-fade-in .6s var(--ease-out-expo) both}@keyframes stat-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.stat-value{font-size:2.2rem;font-weight:700;line-height:1;background:linear-gradient(135deg,var(--neon-blue),var(--neon-purple));-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 12px rgba(102,215,255,.4))}.stat-label{font-family:var(--mono);font-size:.65rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.1em}.philosophy-cell{grid-column:3 / 4;grid-row:2 / 3;display:flex;flex-direction:column;gap:1rem;padding:1.8rem}.philosophy-title{font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--neon-purple);margin-bottom:.3rem}.philosophy-list{display:flex;flex-direction:column;gap:.8rem}.philosophy-item{display:flex;flex-direction:column;gap:.2rem;padding-left:.8rem;border-left:2px solid var(--glass-stroke);transition:border-color .3s ease;animation:philosophy-slide-in .5s var(--ease-out-expo) both}@keyframes philosophy-slide-in{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.philosophy-item:hover{border-left-color:var(--neon-purple)}.philosophy-keyword{font-family:var(--mono);font-size:.78rem;font-weight:600;color:var(--text-bright);letter-spacing:.06em}.philosophy-text{font-size:.82rem;color:var(--text-dim);line-height:1.55}.bento-cell.chapter-card{grid-column:span 1}.chapter-era{font-family:var(--mono);font-size:.8rem;color:var(--text-bright);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.5rem;opacity:.9}.chapter-text{color:var(--text-dim);line-height:1.65;font-size:.95rem}.projects-viewport{width:100%;margin:0;overflow:visible}.projects-header{width:min(1100px,90%);margin:0 auto 3rem}.projects-bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(320px,auto);gap:1.5rem;width:min(1200px,92%);margin:0 auto}.bento-project-wrapper{perspective:1000px}.projects-bento>.bento-project-wrapper:nth-child(1){grid-column:1 / 3;grid-row:1 / 3}.projects-bento>.bento-project-wrapper:nth-child(2){grid-column:3 / 5;grid-row:1 / 2}.projects-bento>.bento-project-wrapper:nth-child(3){grid-column:3 / 4;grid-row:2 / 3}.projects-bento>.bento-project-wrapper:nth-child(4){grid-column:4 / 5;grid-row:2 / 4}.projects-bento>.bento-project-wrapper:nth-child(5){grid-column:1 / 2;grid-row:3 / 4}.projects-bento>.bento-project-wrapper:nth-child(6){grid-column:2 / 4;grid-row:3 / 4}.project-card-inner{position:relative;height:100%;border-radius:1.5rem;overflow:hidden;will-change:transform;transform-style:preserve-3d;transition:box-shadow .4s ease;background:var(--bg-1);display:flex;flex-direction:column}.project-card-inner:before{content:"";position:absolute;inset:0;background:radial-gradient(800px circle at var(--mouse-x, 50%) var(--mouse-y, 50%),rgba(255,255,255,.06),transparent 40%);z-index:10;pointer-events:none;opacity:0;transition:opacity .3s ease}.project-card-inner:hover:before{opacity:1}.projects-bento>.bento-project-wrapper:nth-child(1) .project-visual{height:380px}.projects-bento>.bento-project-wrapper:nth-child(2) .project-visual{height:200px}.projects-bento>.bento-project-wrapper:nth-child(3) .project-visual{height:180px}.projects-bento>.bento-project-wrapper:nth-child(4) .project-visual{height:300px}.projects-bento>.bento-project-wrapper:nth-child(5) .project-visual{height:180px}.projects-bento>.bento-project-wrapper:nth-child(6) .project-visual{height:200px}.projects-bento>.bento-project-wrapper:nth-child(1) .project-name{font-size:clamp(2.5rem,4vw,3.8rem);margin-top:8rem}.projects-bento>.bento-project-wrapper:nth-child(1) .project-body{padding:2.5rem}.project-card-inner:hover{box-shadow:0 24px 60px #0009,inset 0 0 20px #ffffff0d}.project-card-inner:hover .project-border-glow{opacity:.15}.project-card-inner:hover .outer.holo-ring{animation-duration:8s;border-color:#fffc!important}.project-card-inner:hover .inner.holo-ring{animation-duration:12s;border-color:#ffffff80!important}.project-card-inner:hover .project-cta svg{transform:translate(6px)}.project-border-glow{position:absolute;inset:0;opacity:.05;transition:opacity .4s ease;z-index:0;filter:blur(40px)}.project-visual{position:relative;height:260px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid var(--glass-stroke);background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.03) 0%,transparent 70%);z-index:1}.project-index{position:absolute;top:-20px;right:-10px;font-size:10rem;font-weight:800;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.05);z-index:0;pointer-events:none}.holo-ring{position:absolute;border-radius:50%;border:1px dashed;opacity:.4;transition:all .4s ease;z-index:1}.holo-ring.outer{width:160px;height:160px;animation:spin 20s linear infinite}.holo-ring.inner{width:120px;height:120px;animation:spin 15s linear infinite reverse;opacity:.2}.holo-core{position:absolute;width:8px;height:8px;border-radius:50%;z-index:2}@keyframes spin{to{transform:rotate(360deg)}}.project-name{position:relative;z-index:3;font-size:clamp(2rem,3.5vw,2.8rem);font-weight:700;letter-spacing:-.02em;color:var(--text-bright);text-shadow:0 4px 24px rgba(0,0,0,.8);margin-top:5rem}.project-body{position:relative;padding:2rem;z-index:1;display:flex;flex-direction:column;flex-grow:1}.project-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.2rem;font-family:var(--mono);font-size:.75rem;letter-spacing:.1em}.project-status{display:flex;align-items:center;gap:.5rem;color:var(--text-bright)}.status-dot{width:6px;height:6px;border-radius:50%;animation:status-pulse 2s ease-in-out infinite}@keyframes status-pulse{0%,to{opacity:1}50%{opacity:.4}}.project-year{color:var(--text-dim)}.project-summary{color:var(--text-dim);line-height:1.65;margin-bottom:1.5rem}.project-metric-row{display:flex;flex-direction:column;gap:.2rem;margin-bottom:1.5rem;padding-left:1rem;border-left:2px solid var(--glass-stroke)}.metric-value{font-size:1.8rem;font-weight:700;line-height:1}.metric-label{font-family:var(--mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim)}.chip-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.chip{font-family:var(--mono);font-size:.7rem;letter-spacing:.04em;border:1px solid var(--glass-stroke);border-radius:4px;padding:.35rem .6rem;color:var(--text-dim);background:#ffffff05;transition:border-color .3s ease,color .3s ease}.chip:hover{border-color:var(--neon-blue);color:var(--text-bright)}.project-flow{margin-bottom:1.5rem;padding:1rem 0}.flow-title{font-family:var(--mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-dim);margin-bottom:.8rem}.flow-pipeline{display:flex;align-items:center;gap:0;overflow-x:auto;padding-bottom:.4rem}.flow-step{display:flex;align-items:center;flex-shrink:0}.flow-connector{width:20px;height:1px;flex-shrink:0}.flow-node{border:1px solid;border-radius:6px;padding:.4rem .65rem;background:#ffffff08;transition:transform .3s ease,box-shadow .3s ease}.flow-node:hover{transform:scale(1.08)}.flow-node-text{font-family:var(--mono);font-size:.62rem;letter-spacing:.04em;color:var(--text-bright);white-space:nowrap}.projects-bento>.bento-project-wrapper:nth-child(1) .flow-pipeline,.projects-bento>.bento-project-wrapper:nth-child(4) .flow-pipeline{flex-direction:column;align-items:flex-start;overflow-x:visible;gap:0}.projects-bento>.bento-project-wrapper:nth-child(1) .flow-connector,.projects-bento>.bento-project-wrapper:nth-child(4) .flow-connector{width:1px;height:16px;margin-left:1.5rem}.projects-bento>.bento-project-wrapper:nth-child(1) .flow-step,.projects-bento>.bento-project-wrapper:nth-child(4) .flow-step{flex-direction:column;align-items:flex-start}.project-cta{margin-top:auto;padding-top:1.5rem;border-top:1px solid var(--glass-stroke);display:flex;justify-content:space-between;align-items:center;cursor:pointer}.cta-text{font-family:var(--mono);font-size:.75rem;letter-spacing:.15em;color:var(--text-bright)}.project-cta svg{transition:transform .3s var(--ease-out-expo)}.skills-bento{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.skills-hero-cell{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:2.5rem 3rem;position:relative;overflow:hidden}.skills-hero-header{display:flex;flex-direction:column;gap:.6rem}.skills-hero-tag{font-family:var(--mono);font-size:.7rem;letter-spacing:.16em;color:var(--neon-blue)}.skills-hero-status{display:flex;align-items:center;gap:.5rem;font-family:var(--mono);font-size:.68rem;letter-spacing:.08em;color:var(--neon-green)}.skills-status-dot{width:6px;height:6px;border-radius:50%;background:var(--neon-green);box-shadow:0 0 10px var(--neon-green);animation:status-pulse 2s ease-in-out infinite}.skills-hero-metrics{display:flex;gap:3rem}.skills-metric{display:flex;flex-direction:column;gap:.3rem}.skills-metric-value{font-size:2.4rem;font-weight:700;line-height:1;background:linear-gradient(135deg,var(--neon-blue),var(--neon-purple));-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 10px rgba(102,215,255,.3))}.skills-metric-label{font-family:var(--mono);font-size:.62rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.1em}.skills-hero-visual{position:relative;width:140px;height:140px;flex-shrink:0}.radar-ring{position:absolute;border-radius:50%;border:1px solid rgba(102,215,255,.12);top:50%;left:50%;transform:translate(-50%,-50%)}.radar-ring.r1{width:140px;height:140px}.radar-ring.r2{width:100px;height:100px}.radar-ring.r3{width:60px;height:60px}.radar-sweep{position:absolute;top:50%;left:50%;width:70px;height:2px;transform-origin:left center;background:linear-gradient(90deg,var(--neon-blue),transparent);animation:radar-spin 4s linear infinite}@keyframes radar-spin{to{transform:rotate(360deg)}}.radar-center{position:absolute;top:50%;left:50%;width:6px;height:6px;margin:-3px;border-radius:50%;background:var(--neon-blue);box-shadow:0 0 12px var(--neon-blue);animation:glow-breathe 2.5s ease-in-out infinite}.skill-category-card{padding:1.8rem;display:flex;flex-direction:column;gap:1.2rem;transition:transform .4s var(--ease-out-expo),border-color .3s ease,box-shadow .4s ease;cursor:pointer;perspective:900px;transform-style:preserve-3d;will-change:transform;position:relative;overflow:hidden}.skill-card-spotlight{position:absolute;inset:0;background:radial-gradient(600px circle at var(--mouse-x, 50%) var(--mouse-y, 50%),rgba(255,255,255,.08),transparent 40%);opacity:0;transition:opacity .3s ease;pointer-events:none;z-index:0}.skill-category-card:hover .skill-card-spotlight{opacity:1}.skill-category-card:hover{border-color:var(--skill-color, rgba(102, 215, 255, .4));box-shadow:0 20px 56px #00000080,inset 0 0 40px #ffffff0a}.skill-category-card:hover .skill-cat-icon{transform:scale(1.3);filter:drop-shadow(0 0 8px var(--skill-color))}.skill-category-card:hover .skill-bar-fill{filter:brightness(1.3)}.skill-category-card:hover .bar-glow-tip{opacity:1;animation:tip-pulse 1.5s ease-in-out infinite}.skill-category-card:hover .skill-bar-pct{transform:scale(1.1)}.skill-active{border-color:var(--skill-color)!important;box-shadow:0 0 30px #ffffff0d,0 24px 60px #00000080,inset 0 0 40px #ffffff0a!important;z-index:2}.skill-active .skill-bar-fill{animation:bar-charge-shimmer 2s linear infinite;background-size:200% 100%!important}@keyframes bar-charge-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skill-cat-header{display:flex;align-items:center;gap:.7rem;position:relative;z-index:1}.skill-cat-icon{font-size:1.3rem;line-height:1;transition:transform .4s var(--ease-out-expo),filter .3s ease}.icon-spin{animation:icon-rotate 3s linear infinite}@keyframes icon-rotate{to{transform:rotate(360deg) scale(1.3)}}.skill-cat-name{font-family:var(--mono);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-bright);flex:1}.skill-cat-toggle{width:24px;height:24px;border-radius:50%;border:1px solid;display:flex;align-items:center;justify-content:center;font-size:.65rem;color:var(--text-dim);transition:transform .3s ease,background .3s ease,color .3s ease}.skill-cat-toggle.toggled{background:#ffffff14;color:var(--text-bright);transform:rotate(90deg)}.skill-bars{display:flex;flex-direction:column;gap:.9rem;position:relative;z-index:1}.skill-bar-row{display:flex;flex-direction:column;gap:.35rem;transition:transform .3s ease}.skill-bar-row:hover{transform:translate(4px)}.skill-bar-row:hover .skill-bar-name{color:var(--text-bright)}.skill-bar-row:hover .skill-bar-track{background:#ffffff1a}.skill-bar-info{display:flex;justify-content:space-between;align-items:baseline}.skill-bar-name{font-size:.82rem;color:var(--text);font-weight:500;transition:color .3s ease}.skill-bar-pct{font-family:var(--mono);font-size:.68rem;letter-spacing:.04em;transition:transform .3s ease}.skill-bar-track{width:100%;height:5px;background:#ffffff0f;border-radius:5px;overflow:visible;position:relative;transition:background .3s ease}.skill-bar-fill{height:100%;border-radius:5px;transform-origin:left center;position:relative;transition:filter .3s ease}.bar-glow-tip{position:absolute;right:-3px;top:50%;width:7px;height:7px;margin-top:-3.5px;border-radius:50%;opacity:0;transition:opacity .3s ease}@keyframes tip-pulse{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.6);opacity:1}}.radar-sweep.scanning{animation-duration:1.5s;background:linear-gradient(90deg,var(--neon-green),transparent)}.radar-ping{position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px;border-radius:50%;border:1px solid var(--neon-green);animation:radar-ping-expand 1.5s ease-out infinite}@keyframes radar-ping-expand{0%{transform:scale(.5);opacity:1}to{transform:scale(4);opacity:0}}.skill-expanded{display:flex;align-items:center;gap:1.2rem;padding-top:1rem;border-top:1px solid var(--glass-stroke);position:relative;z-index:1;animation:expand-in .4s var(--ease-out-expo)}@keyframes expand-in{0%{opacity:0;max-height:0;transform:translateY(-10px)}to{opacity:1;max-height:200px;transform:translateY(0)}}.skill-power-ring{width:56px;height:56px;border-radius:50%;border:2px solid;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;animation:power-ring-glow 2s ease-in-out infinite}@keyframes power-ring-glow{0%,to{box-shadow:0 0 8px #ffffff0d}50%{box-shadow:0 0 20px #ffffff1f}}.skill-power-value{font-family:var(--mono);font-size:1rem;font-weight:700;line-height:1}.skill-power-label{font-family:var(--mono);font-size:.5rem;letter-spacing:.08em;color:var(--text-dim)}.skill-expanded-hint{font-family:var(--mono);font-size:.62rem;color:var(--text-dim);letter-spacing:.06em}.timeline{position:relative;padding-left:3rem}.timeline-rail{position:absolute;left:.9rem;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--neon-blue),var(--neon-purple),transparent);border-radius:2px}.timeline-entry{position:relative;padding-bottom:3rem}.timeline-entry:last-child{padding-bottom:0}.timeline-dot{position:absolute;left:-2.35rem;top:.3rem;width:14px;height:14px;border-radius:50%;background:var(--bg-0);border:2px solid var(--neon-blue);box-shadow:0 0 16px #66d7ff99;z-index:1}.timeline-entry:nth-child(2) .timeline-dot{border-color:var(--neon-purple);box-shadow:0 0 16px #9f63ff99}.timeline-entry:nth-child(3) .timeline-dot{border-color:var(--neon-green);box-shadow:0 0 16px #4bffcb80}.timeline-card{padding:1.5rem 1.8rem}.timeline-company{font-size:1.2rem;font-weight:600;margin-bottom:.25rem}.timeline-role{font-family:var(--mono);font-size:.8rem;color:var(--neon-blue);letter-spacing:.06em;margin-bottom:.15rem}.timeline-period{font-size:.78rem;color:var(--text-dim);margin-bottom:.8rem}.timeline-detail{color:var(--text-dim);line-height:1.65}.contact-split{display:grid;grid-template-columns:1.04fr .96fr;gap:2rem;align-items:stretch}.contact-scene-wrap{position:relative;height:520px;border-radius:1.45rem;overflow:hidden;border:1px solid rgba(152,199,255,.26);box-shadow:0 30px 80px #050a1ca6,inset 0 0 0 1px #b6d7ff1a;background:radial-gradient(ellipse 75% 55% at 50% 40%,rgba(43,99,146,.16),transparent 62%),linear-gradient(150deg,#0b1226f2,#040a14f2);isolation:isolate}.contact-scene-wrap:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to bottom,rgba(8,14,28,.26),transparent 30%,transparent 68%,rgba(8,14,28,.34)),radial-gradient(circle at 80% 15%,rgba(120,228,255,.22),transparent 38%),radial-gradient(circle at 15% 80%,rgba(127,245,218,.14),transparent 36%);z-index:2}.contact-scene-wrap:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 140px #0a122a8c;z-index:3}.contact-scene-topbar{position:absolute;top:14px;left:14px;right:14px;display:flex;flex-wrap:wrap;gap:.45rem;z-index:4;pointer-events:none}.scene-pill{display:inline-flex;align-items:center;padding:.3rem .58rem;border-radius:999px;border:1px solid rgba(133,196,245,.34);background:#08101c9e;color:#98d1f8;font-family:var(--mono);font-size:.58rem;letter-spacing:.14em}.scene-pill-soft{color:#96f3df;border-color:#84f7d952}.scene-pill-warm{color:#ffd897;border-color:#ffd48c5c}.contact-scene-fallback{width:100%;height:100%;background:radial-gradient(circle at 68% 28%,rgba(124,228,255,.28),transparent 35%),radial-gradient(circle at 32% 76%,rgba(122,255,225,.2),transparent 42%),linear-gradient(170deg,#081327,#050912 68%)}.contact-scene-overlay{position:absolute;bottom:16px;left:16px;right:16px;padding:.8rem 1rem;border-radius:999px;border:1px solid rgba(134,190,255,.26);background:#060c1880;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none;z-index:5}.contact-signal-status{display:flex;align-items:center;gap:.55rem}.contact-signal-dot{width:8px;height:8px;border-radius:50%;background:#7dffe0;box-shadow:0 0 12px #7dffe0;animation:status-pulse 2s ease-in-out infinite}.contact-signal-dot.transmitting{background:#ffcf73;box-shadow:0 0 16px #ffcf73;animation:status-pulse .5s ease-in-out infinite}.contact-signal-text{font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;color:#93f5de}.contact-signal-dot.transmitting+.contact-signal-text{color:#ffd894}.contact-form-wrap{display:flex;flex-direction:column;gap:1rem}.contact-form{padding:2rem;display:flex;flex-direction:column;gap:1.15rem;border-radius:1.45rem;border:1px solid rgba(151,196,255,.26);background:radial-gradient(circle at 18% 12%,rgba(105,190,255,.13),transparent 40%),radial-gradient(circle at 88% 88%,rgba(129,255,221,.09),transparent 44%),linear-gradient(150deg,#0f1730c7,#080c18d6);box-shadow:0 24px 60px #04081480,inset 0 0 0 1px #b2d6ff14}.contact-form-header{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.3rem}.contact-form-tag{font-family:var(--mono);font-size:.64rem;letter-spacing:.2em;color:#9bd7ff}.terminal-prompt{font-size:.8rem;font-family:var(--mono);color:#8ff3df}.terminal-prompt .blink{animation:cursor-blink 1s step-end infinite}@keyframes cursor-blink{0%,to{opacity:1}50%{opacity:0}}.contact-field{display:flex;flex-direction:column;gap:.4rem}.contact-label{display:flex;align-items:center;gap:.5rem;font-family:var(--mono);font-size:.72rem;color:#afbddf;letter-spacing:.08em;text-transform:uppercase}.contact-label-icon{font-size:.58rem;color:#95d6ff;background:#4da4ff29;border:1px solid rgba(117,186,255,.32);border-radius:999px;padding:.16rem .48rem;letter-spacing:.05em}.contact-input{border:1px solid rgba(150,192,255,.18);border-radius:.9rem;background:linear-gradient(150deg,#0a1222e6,#080d18f2);color:var(--text-bright);padding:.8rem .95rem;font-family:var(--sans);font-size:.9rem;transition:border-color .3s ease,box-shadow .3s ease,background .3s ease}.contact-input::placeholder{color:#b2c4e399}.contact-input:focus{outline:none;border-color:#80e0ffb8;box-shadow:0 0 0 2px #78d6ff24,0 20px 32px #060c1c80;background:linear-gradient(150deg,#0c182ef2,#090f1cf7)}.contact-textarea{resize:vertical;min-height:110px}.contact-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.3rem}.contact-send-btn{display:inline-flex;align-items:center;gap:.6rem;padding:.75rem 1.5rem;font-family:var(--mono);font-size:.78rem;letter-spacing:.1em;color:#041019;background:linear-gradient(135deg,#7df,#77ffd7);border:none;border-radius:999px;cursor:pointer;transition:box-shadow .3s ease,transform .25s ease,background .3s ease;will-change:transform;position:relative;overflow:hidden;box-shadow:0 8px 28px #52cbff57,inset 0 0 0 1px #ffffff57}.contact-send-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transform:translate(-100%);transition:transform .6s ease}.contact-send-btn:hover:before{transform:translate(100%)}.contact-send-btn:hover{box-shadow:0 14px 36px #54d3ff73,inset 0 0 0 1px #fff6;transform:translateY(-2px)}.contact-send-btn.is-sending{background:linear-gradient(135deg,#ffcf73,#ff9a56);pointer-events:none}.contact-send-btn.is-sent{background:linear-gradient(135deg,#7effde,#4de9d0)}.contact-send-text{position:relative;z-index:1}.contact-send-icon{position:relative;z-index:1;font-size:1rem;transition:transform .3s ease}.contact-send-btn:hover .contact-send-icon{transform:translate(3px)}.contact-direct-link{font-family:var(--mono);font-size:.68rem;color:#9aa9cf;letter-spacing:.06em;transition:color .3s ease,transform .3s ease}.contact-direct-link:hover{color:#8fdfff;transform:translate(2px)}.contact-channels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.contact-channel{display:grid;grid-template-columns:auto 1fr;gap:.52rem .7rem;align-items:center;min-height:84px;padding:.9rem 1rem;border-radius:1rem;border:1px solid rgba(137,180,255,.2);background:linear-gradient(145deg,#10182ea6,#080c18bf);box-shadow:inset 0 0 0 1px #adceff0d;transition:border-color .3s ease,transform .3s ease,background .3s ease}.contact-channel:hover{border-color:#85d6ff85;background:linear-gradient(145deg,#14213eb8,#09101ed1);transform:translateY(-3px)}.contact-channel-link{text-decoration:none}.contact-channel-link:focus-visible{outline:2px solid rgba(134,220,255,.7);outline-offset:2px}.channel-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;box-shadow:0 0 12px currentColor}.channel-label{grid-column:2;font-family:var(--mono);font-size:.62rem;letter-spacing:.13em;text-transform:uppercase;color:#98a7cc}.channel-value{grid-column:1 / -1;font-size:.79rem;color:var(--text-bright);line-height:1.4;word-break:break-word}.palette-backdrop{position:fixed;inset:0;z-index:200;background:#02040e99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:grid;place-items:center}.palette-box{width:min(520px,calc(100% - 2rem));border-radius:1.25rem;padding:1rem;display:flex;flex-direction:column;gap:.35rem}.palette-title{font-family:var(--mono);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);padding:.4rem .6rem}.palette-item{width:100%;text-align:left;border-radius:.7rem;padding:.7rem 1rem;background:transparent;border:1px solid transparent;color:var(--text);cursor:pointer;font-size:.9rem;transition:background .2s ease,border-color .2s ease}.palette-item:hover{background:#66d7ff14;border-color:var(--glass-stroke)}.assistant-drawer{position:fixed;right:1.2rem;bottom:5.5rem;width:min(380px,calc(100% - 2rem));z-index:90;padding:1.5rem}.assistant-drawer h3{font-size:1rem;margin-bottom:.5rem}.assistant-drawer p{font-size:.88rem;color:var(--text-dim);line-height:1.55;margin-bottom:1rem}.dock{position:fixed;left:50%;bottom:1.2rem;transform:translate(-50%);z-index:90;display:flex;gap:.3rem;padding:.35rem;border-radius:999px}.dock-item{padding:.4rem .85rem;border-radius:999px;background:transparent;border:1px solid transparent;color:var(--text-dim);cursor:pointer;font-family:var(--mono);font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;transition:color .2s,background .2s}.dock-item:hover{color:var(--text);background:#66d7ff1a}.footer{width:min(1100px,90%);margin:6rem auto 8rem;text-align:center;color:var(--text-dim);font-size:.82rem;font-family:var(--mono);letter-spacing:.04em}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.scroll-line,.cursor-dot,.cursor-ring,.noise-overlay{display:none}}@media(max-width:1024px){.about-bento{grid-template-columns:1fr 1fr}.story-cell{grid-column:1 / 3;grid-row:auto}.stats-cell{grid-column:1 / 2;grid-row:auto}.philosophy-cell{grid-column:2 / 3;grid-row:auto}.bento-cell.chapter-card{grid-column:span 1}.projects-bento{grid-template-columns:1fr 1fr}.projects-bento>.bento-project-wrapper:nth-child(1){grid-column:1 / 3;grid-row:auto}.projects-bento>.bento-project-wrapper:nth-child(2){grid-column:1 / 3;grid-row:auto}.projects-bento>.bento-project-wrapper:nth-child(3){grid-column:1 / 2;grid-row:auto}.projects-bento>.bento-project-wrapper:nth-child(4){grid-column:2 / 3;grid-row:auto}.projects-bento>.bento-project-wrapper:nth-child(5){grid-column:1 / 2;grid-row:auto}.projects-bento>.bento-project-wrapper:nth-child(6){grid-column:2 / 3;grid-row:auto}.story-orbit{display:none}.skills-bento{grid-template-columns:1fr 1fr}.skills-hero-cell{grid-column:1 / -1}.skills-hero-visual{display:none}.contact-split{grid-template-columns:1fr}.contact-scene-wrap{height:350px}.contact-scene-topbar{top:10px;left:10px;right:10px;gap:.35rem}.scene-pill{font-size:.53rem;letter-spacing:.12em}.contact-channels{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.top-nav{border-radius:1rem;padding:.7rem;flex-direction:column;gap:.5rem}.top-nav .nav-actions{width:100%}.top-nav .nav-actions .btn{flex:1;justify-content:center}.hero-name{font-size:clamp(2.8rem,14vw,5rem)}.hero-tagline{font-size:clamp(1.2rem,5vw,2rem)}.section{padding:7vh 0}.about-bento{grid-template-columns:1fr}.story-cell,.stats-cell,.philosophy-cell,.bento-cell.chapter-card{grid-column:1 / -1}.story-cell{flex-direction:column;padding:2rem}.story-orbit{display:none}.flow-pipeline{flex-wrap:wrap;gap:.5rem}.flow-connector{display:none}.skills-bento{grid-template-columns:1fr}.skills-hero-cell{flex-direction:column;padding:2rem;text-align:center}.skills-hero-metrics{gap:2rem;justify-content:center}.skills-hero-visual{display:none}.projects-bento{grid-template-columns:1fr}.projects-bento>.bento-project-wrapper{grid-column:1 / -1!important;grid-row:auto!important}.stats-row{flex-wrap:wrap;gap:2rem}.stat-item{flex:1 1 40%}.timeline{padding-left:2.2rem}.contact-split{grid-template-columns:1fr}.contact-scene-wrap{height:300px}.contact-scene-topbar{top:8px;left:8px;right:8px;gap:.28rem}.scene-pill{font-size:.5rem;padding:.24rem .5rem;letter-spacing:.1em}.contact-form{padding:1.5rem}.contact-channels{grid-template-columns:1fr}.contact-actions{flex-direction:column;align-items:flex-start;gap:.8rem}.dock{width:calc(100% - 1.5rem);overflow-x:auto;justify-content:flex-start;border-radius:1rem}.cursor-dot,.cursor-ring{display:none}.projects-track{gap:1.5rem}}.flight-game-container{position:relative;width:100%;height:520px;border-radius:1.2rem;overflow:hidden;border:1px solid var(--glass-stroke);box-shadow:var(--ring);margin-top:2.5rem}.flight-canvas{width:100%;height:100%;display:block;cursor:none}.flight-canvas:hover{cursor:none}.flight-card-popup{position:absolute;top:65px;right:20px;width:320px;padding:1.5rem 1.6rem 1.2rem;border-radius:1rem;border:1px solid rgba(102,215,255,.25);animation:flightCardIn .5s var(--ease-out-expo) forwards;z-index:10}.flight-card-accent{position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#66d7ff,#9f63ff,#4bffcb);border-radius:1rem 1rem 0 0}.flight-card-tag{font-family:var(--mono);font-size:.6rem;letter-spacing:.15em;color:var(--neon-green);text-shadow:0 0 10px rgba(75,255,203,.5);display:block;margin-bottom:.7rem}.flight-card-company{font-size:1.15rem;font-weight:700;color:var(--text-bright);margin-bottom:.3rem}.flight-card-role{font-size:.88rem;color:var(--neon-blue);margin-bottom:.15rem}.flight-card-period{font-family:var(--mono);font-size:.7rem;color:var(--text-dim);margin-bottom:.8rem}.flight-card-detail{font-size:.82rem;color:var(--text-dim);line-height:1.6;margin-bottom:1rem}.flight-card-continue{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;color:var(--bg-0);background:linear-gradient(135deg,var(--neon-blue),var(--neon-green));border:none;border-radius:999px;padding:.5rem 1.2rem;cursor:pointer;transition:box-shadow .3s ease,transform .2s ease}.flight-card-continue:hover{box-shadow:0 4px 20px #66d7ff66;transform:translateY(-1px)}@keyframes flightCardIn{0%{opacity:0;transform:translate(30px) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}.flight-complete{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(500px,calc(100% - 40px));max-height:calc(100% - 80px);overflow-y:auto;padding:2rem 2.5rem;border-radius:1.2rem;border:1px solid rgba(75,255,203,.3);animation:flightCompleteIn .8s var(--ease-out-expo) forwards;z-index:10}.flight-complete-glow{position:absolute;inset:-20px;background:radial-gradient(circle,rgba(75,255,203,.1),transparent 70%);pointer-events:none;border-radius:2rem}.flight-complete-tag{font-family:var(--mono);font-size:.65rem;letter-spacing:.2em;color:var(--neon-green);text-shadow:0 0 12px rgba(75,255,203,.6);display:block;margin-bottom:.5rem;text-align:center}.flight-complete-title{font-size:1.4rem;font-weight:700;color:var(--text-bright);margin-bottom:1.2rem;text-align:center}.flight-complete-summary{display:flex;flex-direction:column;gap:1rem}.flight-summary-item{display:flex;gap:.8rem;align-items:flex-start;font-size:.82rem;color:var(--text);line-height:1.5;animation:chipIn .5s var(--ease-out-expo) forwards}.flight-summary-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:5px;box-shadow:0 0 8px currentColor}.flight-summary-item strong{color:var(--text-bright)}.flight-summary-detail{font-size:.75rem;color:var(--text-dim)}@keyframes flightCompleteIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.flight-collected-bar{position:absolute;bottom:38px;left:16px;display:flex;gap:8px;flex-wrap:wrap;max-width:calc(100% - 32px);z-index:5;pointer-events:none}.flight-collected-chip{font-family:var(--mono);font-size:.6rem;color:var(--text-bright);background:#ffffff0f;border:1px solid rgba(255,255,255,.12);padding:3px 10px;border-radius:20px;display:flex;align-items:center;gap:5px;animation:chipIn .4s var(--ease-out-expo) forwards}.collected-dot{width:6px;height:6px;border-radius:50%;box-shadow:0 0 6px currentColor}@keyframes chipIn{0%{opacity:0;transform:translateY(10px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:768px){.flight-game-container{height:420px}.flight-card-popup{width:260px;top:58px;right:10px;padding:1.1rem 1.2rem 1rem}.flight-card-company{font-size:.95rem}.flight-card-detail{font-size:.75rem}.flight-complete{width:calc(100% - 20px);padding:1.5rem}}
