.site-footer[data-v-b059dcd1]{border-top:1px solid var(--color-border);background:var(--c-gray-50);padding:1.25rem 0}.footer-inner[data-v-b059dcd1]{justify-content:space-between;align-items:center;gap:1rem;display:flex}.footer-left strong[data-v-b059dcd1]{color:var(--color-heading);margin-bottom:.15rem;font-size:1rem;display:block}.footer-left p[data-v-b059dcd1]{color:var(--color-text-muted);font-size:.85rem}.footer-links[data-v-b059dcd1]{gap:1.25rem;display:flex}.footer-links a[data-v-b059dcd1]{color:var(--color-text-muted);font-size:.9rem;transition:color .2s}.footer-links a[data-v-b059dcd1]:hover{color:var(--color-accent)}@media (width<=480px){.footer-inner[data-v-b059dcd1]{text-align:center;flex-direction:column}}.skeleton-wrap[data-v-06fdf7cb]{width:100%;max-width:var(--container-max);padding:4rem var(--container-px);margin:0 auto}.visually-hidden[data-v-06fdf7cb]{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skel[data-v-06fdf7cb]{background:linear-gradient(90deg, var(--c-gray-100) 0%, var(--c-gray-200) 50%, var(--c-gray-100) 100%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.4s ease-in-out infinite skel-shimmer-06fdf7cb;display:inline-block}@keyframes skel-shimmer-06fdf7cb{0%{background-position:200% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.skel[data-v-06fdf7cb]{animation:none}}.skel-line[data-v-06fdf7cb]{border-radius:var(--radius-sm)}.skel-hero[data-v-06fdf7cb]{min-height:calc(100vh - var(--nav-height));align-items:center;gap:4rem;display:flex}.skel-hero-text[data-v-06fdf7cb]{flex-direction:column;flex:1;gap:.6rem;display:flex}.skel-hero-actions[data-v-06fdf7cb]{gap:1rem;margin-top:1.5rem;display:flex}.skel-btn[data-v-06fdf7cb]{border-radius:var(--radius-md);width:140px;height:42px}.skel-avatar[data-v-06fdf7cb]{border-radius:50%;flex-shrink:0;width:280px;height:280px}.skel-profile[data-v-06fdf7cb]{align-items:flex-start;gap:3rem;max-width:800px;margin:0 auto;display:flex}.skel-portrait[data-v-06fdf7cb]{border-radius:50%;flex-shrink:0;width:240px;height:240px}.skel-profile-body[data-v-06fdf7cb]{flex-direction:column;flex:1;gap:.55rem;display:flex}.skel-timeline[data-v-06fdf7cb]{grid-template-columns:1fr 1fr;gap:3rem;display:grid}.skel-timeline-col[data-v-06fdf7cb]{flex-direction:column;display:flex}.skel-timeline-item[data-v-06fdf7cb]{border-left:2px solid var(--c-gray-200);flex-direction:column;gap:.35rem;margin-left:.5rem;padding:.5rem 0 1.5rem 1.5rem;display:flex;position:relative}.skel-cards[data-v-06fdf7cb]{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;display:grid}.skel-card[data-v-06fdf7cb]{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg);overflow:hidden}.skel-card-img[data-v-06fdf7cb]{aspect-ratio:16/10;border-radius:0;width:100%;display:block}.skel-card-body[data-v-06fdf7cb]{flex-direction:column;gap:.45rem;padding:1rem 1.25rem;display:flex}@media (width<=768px){.skel-hero[data-v-06fdf7cb],.skel-profile[data-v-06fdf7cb]{text-align:center;flex-direction:column;align-items:center}.skel-avatar[data-v-06fdf7cb]{width:200px;height:200px}.skel-portrait[data-v-06fdf7cb]{width:180px;height:180px}.skel-timeline[data-v-06fdf7cb]{grid-template-columns:1fr;gap:2rem}}:root{--c-white:#fff;--c-gray-50:#f9fafb;--c-gray-100:#f3f4f6;--c-gray-200:#e5e7eb;--c-gray-300:#d1d5db;--c-gray-400:#9ca3af;--c-gray-500:#6b7280;--c-gray-600:#4b5563;--c-gray-700:#374151;--c-gray-800:#1f2937;--c-gray-900:#111827;--c-accent:#2563eb;--c-accent-light:#3b82f6;--c-accent-dark:#1d4ed8;--c-accent-bg:#eff6ff;--color-bg:var(--c-white);--color-bg-alt:var(--c-gray-50);--color-text:var(--c-gray-800);--color-text-muted:var(--c-gray-500);--color-heading:var(--c-gray-900);--color-border:var(--c-gray-200);--color-accent:var(--c-accent);--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-mono:"Fira Code", "JetBrains Mono", Consolas, monospace;--section-py:5rem;--container-px:1.25rem;--container-max:1120px;--radius-sm:.375rem;--radius-md:.75rem;--radius-lg:1rem;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #00000012, 0 2px 4px -2px #0000000d;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -4px #0000000a;--nav-height:4rem}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-padding-top:var(--nav-height)}body{min-height:100vh;color:var(--color-text);background:var(--color-bg);line-height:1.6;font-family:var(--font-sans);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}img,video,svg{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{cursor:pointer;font:inherit}h1,h2,h3,h4,h5,h6{color:var(--color-heading);font-weight:700;line-height:1.25}.container{width:100%;max-width:var(--container-max);padding-left:var(--container-px);padding-right:var(--container-px);margin:0 auto}.section{padding-top:var(--section-py);padding-bottom:var(--section-py)}.section-alt{background:var(--color-bg-alt)}.section-title{margin-bottom:.5rem;font-size:2rem}.section-subtitle{color:var(--color-text-muted);margin-bottom:3rem;font-size:1.1rem;font-weight:400}.fade-section{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(24px)}.fade-section.visible{opacity:1;transform:translateY(0)}body:has(.slideshow){overflow:hidden}.slideshow{width:100%;height:calc(100vh - var(--nav-height));margin-top:var(--nav-height);background:var(--color-bg);position:relative;overflow:hidden}.slide{opacity:0;visibility:hidden;background:var(--color-bg);z-index:0;transition:opacity .9s,visibility .9s;position:absolute;inset:0;overflow-y:auto}.slide.active{opacity:1;visibility:visible;z-index:2}.slide.leaving{opacity:0;visibility:visible;z-index:1}.hero-anim .hero-greeting,.hero-anim .hero-name,.hero-anim .hero-title,.hero-anim .hero-bio,.hero-anim .hero-actions,.hero-anim .hero-socials,.hero-anim .hero-image{opacity:0;transition:opacity .8s ease-out,transform .8s ease-out;transform:translateY(30px)}.hero-anim.animate .hero-greeting{opacity:1;transition-delay:.3s;transform:translateY(0)}.hero-anim.animate .hero-name{opacity:1;transition-delay:.6s;transform:translateY(0)}.hero-anim.animate .hero-title{opacity:1;transition-delay:.9s;transform:translateY(0)}.hero-anim.animate .hero-bio{opacity:1;transition-delay:1.2s;transform:translateY(0)}.hero-anim.animate .hero-actions{opacity:1;transition-delay:1.5s;transform:translateY(0)}.hero-anim.animate .hero-socials{opacity:1;transition-delay:1.8s;transform:translateY(0)}.hero-anim.animate .hero-image{opacity:1;transition-duration:1.2s;transition-delay:.5s;transform:translateY(0)scale(1)}.slide-content{opacity:0;transition:opacity .7s ease-out,transform .7s ease-out;transform:translateY(30px)}.slide.active .slide-content{opacity:1;transform:translateY(0)}.slide.active .slide-stagger-1{transition-delay:.15s}.slide.active .slide-stagger-2{transition-delay:.3s}.slide.active .slide-stagger-3{transition-delay:.45s}.tech-icon-item{opacity:0;transition:opacity .4s ease-out,transform .4s ease-out;transform:translateY(20px)}.tech-icon-item.visible{opacity:1;transform:translateY(0)}.slide-dots{z-index:50;flex-direction:column;gap:.75rem;display:flex;position:fixed;top:50%;right:1.5rem;transform:translateY(-50%)}.slide-dot{border:2px solid var(--c-gray-400);cursor:pointer;background:0 0;border-radius:50%;width:10px;height:10px;padding:0;transition:background .3s,border-color .3s,transform .3s}.slide-dot:hover{border-color:var(--color-accent);transform:scale(1.3)}.slide-dot.active{background:var(--color-accent);border-color:var(--color-accent);transform:scale(1.2)}@media (width<=768px){.slide-dots{gap:.5rem;right:.75rem}.slide-dot{width:8px;height:8px}}.page-enter{opacity:0;min-height:calc(100vh - var(--nav-height));flex-direction:column;display:flex}.page-enter.ready .page-anim{opacity:1;transform:translateY(0)}.page-anim{opacity:0;transition:opacity .7s ease-out,transform .7s ease-out;transform:translateY(28px)}.page-stagger-1{transition-delay:.1s}.page-stagger-2{transition-delay:.25s}.page-stagger-3{transition-delay:.4s}.page-stagger-4{transition-delay:.55s}.page-stagger-5{transition-delay:.7s}.page-enter.ready{opacity:1;transition:opacity .3s}.page-enter>:last-child{margin-top:auto}#app{width:100%;min-height:100vh}i.devicon-claude-plain{vertical-align:-.125em;background-color:currentColor;width:1em;height:1em;display:inline-block;-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 0C12 6 12 12 24 12C12 12 12 18 12 24C12 18 12 12 0 12C12 12 12 6 12 0Z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 0C12 6 12 12 24 12C12 12 12 18 12 24C12 18 12 12 0 12C12 12 12 6 12 0Z'/></svg>");-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.skip-link{z-index:10000;background:var(--color-accent);color:#fff;border-radius:0 0 var(--radius-md) 0;padding:.65rem 1rem;font-weight:600;transition:transform .18s;position:fixed;top:0;left:0;transform:translateY(-100%)}.skip-link:focus,.skip-link:focus-visible{outline-offset:-4px;outline:2px solid #fff;transform:translateY(0)}#main-content{outline:none}html.intro-active,html.intro-active body{overflow:hidden}.intro-fade-enter-active,.intro-fade-leave-active{transition:opacity .4s}.intro-fade-enter-from,.intro-fade-leave-to{opacity:0}a{color:var(--color-accent);transition:color .2s}a:hover{color:var(--c-accent-dark)}.btn{border-radius:var(--radius-md);border:none;align-items:center;gap:.5rem;padding:.65rem 1.5rem;font-size:.95rem;font-weight:600;transition:background .2s,box-shadow .2s,transform .15s;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover{background:var(--c-accent-dark);color:#fff;box-shadow:var(--shadow-md)}.btn-outline{color:var(--color-accent);border:1.5px solid var(--color-accent);background:0 0}.btn-outline:hover{background:var(--c-accent-bg)}.card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:box-shadow .25s,transform .25s;overflow:hidden}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.badge{background:var(--c-accent-bg);color:var(--color-accent);border-radius:9999px;padding:.2rem .6rem;font-size:.75rem;font-weight:600;display:inline-block}.chat-fab[data-v-ae54dad6]{z-index:1000;background:var(--color-accent);color:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:transform .2s,box-shadow .2s;display:flex;position:fixed;bottom:1.5rem;right:1.5rem;box-shadow:0 4px 12px #2563eb59}.chat-fab[data-v-ae54dad6]:hover{transform:scale(1.06);box-shadow:0 6px 20px #2563eb66}.chat-panel[data-v-ae54dad6]{z-index:999;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-direction:column;width:380px;max-height:520px;display:flex;position:fixed;bottom:5.5rem;right:1.5rem;overflow:hidden;box-shadow:0 12px 40px #0000001f}.chat-header[data-v-ae54dad6]{border-bottom:1px solid var(--color-border);background:var(--c-gray-50);padding:.85rem 1rem}.chat-header strong[data-v-ae54dad6]{font-size:.95rem;display:block}.chat-header span[data-v-ae54dad6]{color:var(--color-text-muted);font-size:.75rem}.chat-messages[data-v-ae54dad6]{flex-direction:column;flex:1;gap:.75rem;min-height:260px;padding:1rem;display:flex;overflow-y:auto}.msg[data-v-ae54dad6]{display:flex}.msg.user[data-v-ae54dad6]{justify-content:flex-end}.msg.assistant[data-v-ae54dad6]{justify-content:flex-start}.msg-bubble[data-v-ae54dad6]{border-radius:var(--radius-md);background:var(--c-gray-100);max-width:80%;padding:.6rem .85rem;font-size:.88rem;line-height:1.5}.msg.user .msg-bubble[data-v-ae54dad6]{background:var(--color-accent);color:#fff}.msg.error .msg-bubble[data-v-ae54dad6]{color:#b91c1c;background:#fef2f2;border:1px solid #fca5a5}.msg-bubble p[data-v-ae54dad6]{white-space:pre-wrap;margin:0}.typing[data-v-ae54dad6]{align-items:center;gap:4px;height:18px;display:flex}.typing span[data-v-ae54dad6]{opacity:.3;background:currentColor;border-radius:50%;width:6px;height:6px;animation:1.2s infinite tb-ae54dad6}.typing span[data-v-ae54dad6]:nth-child(2){animation-delay:.2s}.typing span[data-v-ae54dad6]:nth-child(3){animation-delay:.4s}@keyframes tb-ae54dad6{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-5px)}}.chat-input[data-v-ae54dad6]{border-top:1px solid var(--color-border);gap:.5rem;padding:.75rem;display:flex}.chat-input textarea[data-v-ae54dad6]{resize:none;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font:inherit;color:var(--color-text);background:var(--color-bg);outline:none;flex:1;padding:.5rem .65rem;font-size:.88rem}.chat-input textarea[data-v-ae54dad6]:focus{border-color:var(--color-accent)}.chat-input button[data-v-ae54dad6]{border-radius:var(--radius-md);background:var(--color-accent);color:#fff;border:none;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;transition:background .2s;display:flex}.chat-input button[data-v-ae54dad6]:hover:not(:disabled){background:var(--c-accent-dark)}.chat-input button[data-v-ae54dad6]:disabled{opacity:.4;cursor:not-allowed}.chat-slide-enter-active[data-v-ae54dad6],.chat-slide-leave-active[data-v-ae54dad6]{transition:opacity .25s,transform .25s}.chat-slide-enter-from[data-v-ae54dad6],.chat-slide-leave-to[data-v-ae54dad6]{opacity:0;transform:translateY(12px)scale(.96)}@media (width<=480px){.chat-panel[data-v-ae54dad6]{width:calc(100vw - 2rem);max-height:70vh;bottom:5rem;right:1rem}}.intro-overlay[data-v-b3da4bca]{z-index:9999;color:#d8f5ff;cursor:text;isolation:isolate;-webkit-user-select:none;user-select:none;background:#000;justify-content:center;align-items:center;font-family:Fira Code,JetBrains Mono,Consolas,monospace;display:flex;position:fixed;inset:0;overflow:hidden}.visually-hidden[data-v-b3da4bca]{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.intro-overlay.stage-fade[data-v-b3da4bca]{animation:.5s ease-out forwards overlayFade-b3da4bca}@keyframes overlayFade-b3da4bca{to{opacity:0}}.intro-canvas[data-v-b3da4bca]{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.intro-vignette[data-v-b3da4bca]{z-index:2;pointer-events:none;mix-blend-mode:normal;background:radial-gradient(#0000 35%,#0000008c 80%,#000000eb 100%),repeating-linear-gradient(0deg,#00e5ff06 0 1px,#0000 1px 3px);position:absolute;inset:0}.intro-noise[data-v-b3da4bca]{z-index:3;pointer-events:none;opacity:.08;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 0.6 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");background-size:160px 160px;animation:1.4s steps(6,end) infinite noiseShift-b3da4bca;position:absolute;inset:0}@keyframes noiseShift-b3da4bca{0%{transform:translate(0)}20%{transform:translate(-8px,4px)}40%{transform:translate(6px,-3px)}60%{transform:translate(-4px,-7px)}80%{transform:translate(7px,5px)}to{transform:translate(0)}}.intro-terminal-wrap[data-v-b3da4bca]{z-index:5;width:min(680px,92vw);transition:opacity .48s,transform .6s cubic-bezier(.7,0,.84,0);position:relative}.intro-terminal-wrap.leaving[data-v-b3da4bca]{opacity:0;filter:blur(2px)brightness(2);transform:scale(.05)translateY(0)}.intro-terminal[data-v-b3da4bca]{-webkit-backdrop-filter:blur(12px);background:#121216eb;border:1px solid #00e5ff1f;border-radius:12px;position:relative;overflow:hidden;box-shadow:0 0 0 1px #ffffff0f,0 30px 90px -10px #00e5ff2e,0 18px 50px -5px #000000d9,inset 0 0 60px #00e5ff0a}.intro-terminal[data-v-b3da4bca]:before{content:"";pointer-events:none;opacity:.6;z-index:1;background:repeating-linear-gradient(0deg,#00e5ff0a 0 1px,#0000 1px 3px);position:absolute;inset:0}.intro-terminal[data-v-b3da4bca]:after{content:"";pointer-events:none;mix-blend-mode:screen;z-index:0;background:linear-gradient(120deg,#0000 30%,#00e5ff2e 50%,#0000 70%) 0 0/250% 100%;border-radius:14px;animation:5s linear infinite termSheen-b3da4bca;position:absolute;inset:-2px}@keyframes termSheen-b3da4bca{0%{background-position:200% 0}to{background-position:-100% 0}}.terminal-titlebar[data-v-b3da4bca]{z-index:2;background:linear-gradient(#2a2c33 0%,#1d1f24 100%);border-bottom:1px solid #ffffff0d;align-items:center;height:32px;padding:0 12px;display:flex;position:relative}.terminal-title[data-v-b3da4bca]{text-align:center;letter-spacing:.06em;color:#ffffff73;flex:1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:11px}.dot[data-v-b3da4bca]{border-radius:50%;width:12px;height:12px;margin-right:8px;display:inline-block;box-shadow:inset 0 0 0 .5px #0000004d}.dot-close[data-v-b3da4bca]{background:#ff5f57}.dot-min[data-v-b3da4bca]{background:#febc2e}.dot-max[data-v-b3da4bca]{background:#28c840;margin-right:0}.terminal-body[data-v-b3da4bca]{z-index:2;cursor:text;min-height:260px;padding:22px 26px 26px;font-size:13.5px;line-height:1.65;position:relative}.term-line[data-v-b3da4bca]{white-space:pre-wrap;word-break:break-word;margin:0;font-family:inherit}.term-sys[data-v-b3da4bca]{color:#d8f5ff9e}.term-cmd[data-v-b3da4bca]{color:#e6fbff}.term-err[data-v-b3da4bca]{color:#ff7a8a;text-shadow:0 0 8px #ff506e66}.prompt-user[data-v-b3da4bca]{color:#00e5ff;text-shadow:0 0 6px #00e5ff73}.prompt-sep[data-v-b3da4bca]{color:#d8f5ff73}.prompt-host[data-v-b3da4bca]{color:#b6f0ff}.prompt-path[data-v-b3da4bca]{color:#ffd166}.cmd-text[data-v-b3da4bca]{color:#fff}.term-input-line[data-v-b3da4bca]{flex-wrap:wrap;align-items:center;gap:0;margin-top:6px;display:flex}.input-wrap[data-v-b3da4bca]{cursor:text;white-space:nowrap;flex:1;align-items:center;min-width:0;margin-left:6px;display:inline-flex;position:relative}.text-display[data-v-b3da4bca]{font:inherit;color:#fff;white-space:pre;font-family:inherit}.placeholder-text[data-v-b3da4bca]{color:#00e5ff8c;letter-spacing:.02em;text-shadow:0 0 8px #00e5ff80;pointer-events:none;font:inherit;margin-left:4px;font-family:inherit;animation:2.4s ease-in-out infinite placeholderPulse-b3da4bca}@keyframes placeholderPulse-b3da4bca{0%,to{opacity:.55}50%{opacity:1}}.term-input[data-v-b3da4bca]{color:#0000;caret-color:#0000;width:100%;height:100%;font:inherit;cursor:text;background:0 0;border:none;outline:none;margin:0;padding:0;font-family:inherit;position:absolute;inset:0}.term-input[data-v-b3da4bca]:disabled{cursor:default}.caret[data-v-b3da4bca]{color:#00e5ff;text-shadow:0 0 8px #00e5ffd9;pointer-events:none;margin-left:-2px;font-size:1.05em;transition:opacity 60ms;position:relative}.caret.off[data-v-b3da4bca]{opacity:0}.term-action[data-v-b3da4bca]{color:#d6f7ff;font:inherit;letter-spacing:.05em;cursor:pointer;text-shadow:0 0 6px #00e5ff73;background:linear-gradient(#00e5ff29 0%,#00e5ff0f 100%);border:1px solid #00e5ff8c;border-radius:6px;align-items:center;gap:8px;margin-top:22px;padding:7px 14px 7px 12px;font-family:inherit;font-size:12.5px;transition:transform .18s,box-shadow .18s,background .2s,border-color .2s;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 0 0 1px #00e5ff1f,inset 0 0 16px #00e5ff2e,0 0 18px #00e5ff2e}.term-action[data-v-b3da4bca]:before{content:"";pointer-events:none;background:linear-gradient(120deg,#0000 35%,#ffffff2e 50%,#0000 65%) 200% 0/250% 100%;transition:background-position .6s;position:absolute;inset:0}.term-action[data-v-b3da4bca]:hover{color:#fff;background:linear-gradient(#00e5ff47 0%,#00e5ff1f 100%);border-color:#00e5ffe6;transform:translateY(-1px);box-shadow:0 0 0 1px #00e5ff66,0 0 22px #00e5ff73,inset 0 0 8px #00e5ff66}.term-action[data-v-b3da4bca]:hover:before{background-position:-100% 0}.term-action[data-v-b3da4bca]:active{transform:translateY(0)}.term-action[data-v-b3da4bca]:focus-visible{outline-offset:3px;outline:2px solid #00e5ff}.action-icon[data-v-b3da4bca]{color:#00e5ff;text-shadow:0 0 8px #00e5ffe6;font-size:9px;display:inline-block;transform:translateY(-.5px)}.action-key[data-v-b3da4bca]{color:inherit;font-family:inherit}.intro-terminal.glitch[data-v-b3da4bca]{animation:.28s steps(8,end) glitchShake-b3da4bca}.intro-terminal.glitch[data-v-b3da4bca]:before{opacity:1;animation:.28s linear glitchScan-b3da4bca}@keyframes glitchShake-b3da4bca{0%{filter:hue-rotate();transform:translate(0)}10%{filter:hue-rotate(-30deg)saturate(1.4);transform:translate(-4px,2px)}20%{filter:hue-rotate(40deg)saturate(1.6);transform:translate(5px,-3px)}30%{filter:hue-rotate(-15deg);transform:translate(-3px,4px)}40%{transform:translate(6px,1px)}55%{filter:hue-rotate(25deg);transform:translate(-7px,-2px)}70%{transform:translate(3px,5px)}85%{transform:translate(-2px,-3px)}to{filter:hue-rotate();transform:translate(0)}}@keyframes glitchScan-b3da4bca{0%{background-position:0 0}to{background-position:0 80px}}.intro-terminal.glitch .terminal-body[data-v-b3da4bca]:before,.intro-terminal.glitch .terminal-body[data-v-b3da4bca]:after{content:"";background:inherit;pointer-events:none;mix-blend-mode:screen;opacity:.4;position:absolute;inset:0}.intro-terminal.glitch .terminal-body[data-v-b3da4bca]:before{animation:.28s steps(6,end) infinite rgbJitter-b3da4bca;box-shadow:-3px 0 #ff005a8c,3px 0 #00e5ff8c}@keyframes rgbJitter-b3da4bca{0%,to{transform:translate(0)}25%{transform:translate(2px,-1px)}50%{transform:translate(-2px,1px)}75%{transform:translate(1px,2px)}}.intro-overlay.shake .intro-terminal[data-v-b3da4bca]{animation:.38s cubic-bezier(.36,.07,.19,.97) errShake-b3da4bca}@keyframes errShake-b3da4bca{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-7px)}40%,60%{transform:translate(7px)}}.boot-flash[data-v-b3da4bca]{z-index:4;pointer-events:none;mix-blend-mode:screen;background:radial-gradient(circle,#00e5ff2e 0%,#0000 55%);animation:.7s ease-out bootFlashPulse-b3da4bca;position:absolute;inset:0}@keyframes bootFlashPulse-b3da4bca{0%{opacity:0}20%{opacity:1}to{opacity:0}}.stage-glitch .intro-terminal-wrap[data-v-b3da4bca]{transform:scale(1.02)}.stage-boot .intro-vignette[data-v-b3da4bca]{opacity:.7}.stage-matrix .intro-vignette[data-v-b3da4bca]{opacity:.4}.stage-sweep .intro-vignette[data-v-b3da4bca]{opacity:.2}.stage-reveal .intro-vignette[data-v-b3da4bca]{opacity:0;transition:opacity .4s}@media (prefers-reduced-motion:reduce){.intro-terminal[data-v-b3da4bca]:after,.term-input[data-v-b3da4bca]::placeholder,.intro-noise[data-v-b3da4bca]{animation:none!important}}@media (width<=600px){.terminal-body[data-v-b3da4bca]{padding:18px 18px 22px;font-size:12.5px}.terminal-title[data-v-b3da4bca]{font-size:10px}}.navbar[data-v-e6bc765d]{z-index:100;height:var(--nav-height);-webkit-backdrop-filter:blur(10px);background:#ffffffd9;align-items:center;transition:box-shadow .3s,background .3s;display:flex;position:fixed;top:0;left:0;right:0}.navbar.scrolled[data-v-e6bc765d]{background:#fffffff2;box-shadow:0 1px 8px #0000000f}.navbar.hidden[data-v-e6bc765d]{opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;transform:translateY(-100%)}.nav-inner[data-v-e6bc765d]{justify-content:space-between;align-items:center;display:flex}.nav-logo[data-v-e6bc765d]{color:var(--color-heading);letter-spacing:-.02em;font-size:1.2rem;font-weight:800}.nav-logo[data-v-e6bc765d]:hover{color:var(--color-accent)}nav[data-v-e6bc765d]{gap:.25rem;display:flex}nav a[data-v-e6bc765d]{border-radius:var(--radius-sm);color:var(--color-text-muted);padding:.4rem .75rem;font-size:.88rem;font-weight:500;transition:color .2s,background .2s}nav a[data-v-e6bc765d]:hover{color:var(--color-heading);background:var(--c-gray-100)}nav a.active[data-v-e6bc765d]{color:var(--color-accent);background:var(--c-accent-bg)}.lang-toggle[data-v-e6bc765d]{border:1px solid var(--color-border);letter-spacing:.08em;font-size:.68rem;font-weight:700;font-family:var(--font-mono);color:var(--color-text-muted);cursor:pointer;background:0 0;border-radius:9999px;align-items:center;gap:.3rem;margin-left:.5rem;padding:.2rem .55rem;line-height:1;transition:border-color .2s,background .2s;display:inline-flex}.lang-toggle[data-v-e6bc765d]:hover{border-color:var(--color-accent);background:var(--c-accent-bg)}.lang-opt[data-v-e6bc765d]{color:var(--color-text-muted);transition:color .2s}.lang-opt.active[data-v-e6bc765d]{color:var(--color-accent)}.lang-sep[data-v-e6bc765d]{color:var(--c-gray-300)}.nav-toggle[data-v-e6bc765d]{background:0 0;border:none;padding:.5rem;display:none}.nav-toggle span[data-v-e6bc765d],.nav-toggle span[data-v-e6bc765d]:before,.nav-toggle span[data-v-e6bc765d]:after{background:var(--color-heading);border-radius:2px;width:22px;height:2px;transition:all .3s;display:block;position:relative}.nav-toggle span[data-v-e6bc765d]:before,.nav-toggle span[data-v-e6bc765d]:after{content:"";width:100%;position:absolute;left:0}.nav-toggle span[data-v-e6bc765d]:before{top:-7px}.nav-toggle span[data-v-e6bc765d]:after{top:7px}.nav-toggle span.open[data-v-e6bc765d]{background:0 0}.nav-toggle span.open[data-v-e6bc765d]:before{top:0;transform:rotate(45deg)}.nav-toggle span.open[data-v-e6bc765d]:after{top:0;transform:rotate(-45deg)}@media (width<=768px){.nav-toggle[data-v-e6bc765d]{display:block}nav[data-v-e6bc765d]{top:var(--nav-height);background:var(--color-bg);opacity:0;pointer-events:none;flex-direction:column;padding:1rem;transition:transform .3s,opacity .3s;position:fixed;left:0;right:0;transform:translateY(-120%);box-shadow:0 4px 12px #00000014}nav.open[data-v-e6bc765d]{opacity:1;pointer-events:auto;transform:translateY(0)}nav a[data-v-e6bc765d]{padding:.65rem 1rem;font-size:1rem}}.hero[data-v-cc5abdd9]{min-height:calc(100vh - var(--nav-height));background:linear-gradient(135deg, var(--c-gray-50) 0%, var(--c-white) 100%);align-items:center;display:flex}.hero-inner[data-v-cc5abdd9]{align-items:center;gap:4rem;padding-top:3rem;padding-bottom:3rem;display:flex}.hero-text[data-v-cc5abdd9]{flex:1}.hero-greeting[data-v-cc5abdd9]{color:var(--color-accent);margin-bottom:.25rem;font-size:1.1rem;font-weight:600}.hero-name[data-v-cc5abdd9]{margin-bottom:.5rem;font-size:clamp(2.5rem,5vw,3.5rem)}.hero-title[data-v-cc5abdd9]{color:var(--color-text-muted);margin-bottom:1rem;font-size:1.25rem}.hero-bio[data-v-cc5abdd9]{color:var(--color-text-muted);max-width:520px;margin-bottom:1.5rem;line-height:1.7}.hero-actions[data-v-cc5abdd9]{gap:1rem;margin-bottom:2rem;display:flex}.hero-socials[data-v-cc5abdd9]{gap:1rem;display:flex}.hero-socials a[data-v-cc5abdd9]{color:var(--color-text-muted);transition:color .2s}.hero-socials a[data-v-cc5abdd9]:hover{color:var(--color-accent)}.hero-image[data-v-cc5abdd9]{border-radius:50%;flex-shrink:0;width:300px;height:300px;overflow:hidden}.hero-image img[data-v-cc5abdd9]{object-fit:cover;width:100%;height:100%}@media (width<=768px){.hero-inner[data-v-cc5abdd9]{text-align:center;flex-direction:column-reverse;gap:2rem}.hero-actions[data-v-cc5abdd9],.hero-socials[data-v-cc5abdd9]{justify-content:center}.hero-bio[data-v-cc5abdd9]{margin-left:auto;margin-right:auto}.hero-image[data-v-cc5abdd9]{width:200px;height:200px}}.section--slide[data-v-70ff6079]{padding-top:1rem;padding-bottom:1rem}.projects-grid[data-v-70ff6079]{flex-direction:column;gap:1rem;display:flex}.project-card[data-v-70ff6079]{color:inherit;flex-direction:column;display:flex}.project-img[data-v-70ff6079]{aspect-ratio:16/10;background:var(--c-gray-100);overflow:hidden}.project-img img[data-v-70ff6079]{object-fit:cover;width:100%;height:100%;transition:transform .3s}.project-card:hover .project-img img[data-v-70ff6079]{transform:scale(1.04)}.project-img--placeholder[data-v-70ff6079]{color:var(--c-gray-400);justify-content:center;align-items:center;display:flex}.project-body[data-v-70ff6079]{flex-direction:column;flex:1;padding:.75rem 1rem;display:flex}.project-body h3[data-v-70ff6079]{margin-bottom:.25rem;font-size:1rem}.project-body p[data-v-70ff6079]{color:var(--color-text-muted);flex:1;margin-bottom:.5rem;font-size:.85rem;line-height:1.5}.project-tags[data-v-70ff6079]{flex-wrap:wrap;gap:.4rem;display:flex}.projects-more[data-v-70ff6079]{text-align:center;margin-top:1rem}@media (width<=480px){.projects-grid[data-v-70ff6079]{grid-template-columns:1fr}}.services-grid[data-v-de9af70c]{flex-direction:column;gap:1rem;display:flex}.section--slide[data-v-de9af70c]{padding-top:1rem;padding-bottom:1rem}.service-card[data-v-de9af70c]{text-align:center;padding:1.25rem 1rem}.service-icon[data-v-de9af70c]{color:var(--color-accent);margin-bottom:.5rem;font-size:1.5rem}.service-card h3[data-v-de9af70c]{margin-bottom:.5rem;font-size:1rem}.service-card p[data-v-de9af70c]{color:var(--color-text-muted);font-size:.85rem;line-height:1.6}.tech-panel[data-v-a5b08349]{background:var(--color-bg);justify-content:center;align-items:center;height:100%;display:flex}.tech-title[data-v-a5b08349]{text-align:center;margin-bottom:3rem}.tech-cloud[data-v-a5b08349]{flex-wrap:wrap;justify-content:center;gap:2rem;max-width:900px;margin:0 auto;display:flex}.tech-icon-item[data-v-a5b08349]{flex-direction:column;align-items:center;gap:.4rem;width:72px;display:flex}.tech-icon[data-v-a5b08349]{color:var(--color-heading);font-size:2.5rem;transition:color .2s,transform .2s}.tech-icon-item:hover .tech-icon[data-v-a5b08349]{color:var(--color-accent);transform:scale(1.15)}.tech-label[data-v-a5b08349]{color:var(--color-text-muted);text-align:center;font-size:.7rem;font-weight:600;line-height:1.2}@media (width<=768px){.tech-cloud[data-v-a5b08349]{gap:1.25rem}.tech-icon-item[data-v-a5b08349]{width:60px}.tech-icon[data-v-a5b08349]{font-size:2rem}}.section--slide[data-v-cea46691]{padding-top:1.5rem;padding-bottom:1rem}.section--slide .section-title[data-v-cea46691]{margin-bottom:.75rem}.contact-wrapper[data-v-cea46691]{max-width:640px;margin:0 auto}.contact-success[data-v-cea46691]{text-align:center;padding:3rem 0}.contact-success h3[data-v-cea46691]{margin:1rem 0 .5rem}.contact-success p[data-v-cea46691]{color:var(--color-text-muted);margin-bottom:1.5rem}.contact-form[data-v-cea46691]{flex-direction:column;gap:1.25rem;display:flex}.form-errors[data-v-cea46691]{border-radius:var(--radius-md);color:#b91c1c;background:#fef2f2;border:1px solid #fca5a5;padding:.75rem 1rem;font-size:.9rem}.form-row[data-v-cea46691]{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-group[data-v-cea46691]{flex-direction:column;gap:.35rem;display:flex}.form-group label[data-v-cea46691]{color:var(--color-heading);font-size:.9rem;font-weight:600}.form-group input[data-v-cea46691],.form-group textarea[data-v-cea46691]{border:1.5px solid var(--color-border);border-radius:var(--radius-md);font:inherit;color:var(--color-text);background:var(--color-bg);outline:none;padding:.65rem .85rem;font-size:.95rem;transition:border-color .2s}.form-group input[data-v-cea46691]:focus,.form-group textarea[data-v-cea46691]:focus{border-color:var(--color-accent)}.form-group textarea[data-v-cea46691]{resize:vertical}@media (width<=480px){.form-row[data-v-cea46691]{grid-template-columns:1fr}}.loading-screen[data-v-c21a6b6f]{min-height:calc(100vh - var(--nav-height));color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.spinner[data-v-c21a6b6f]{border:3px solid var(--c-gray-200);border-top-color:var(--color-accent);border-radius:50%;width:36px;height:36px;animation:.7s linear infinite spin-c21a6b6f}@keyframes spin-c21a6b6f{to{transform:rotate(360deg)}}.slide-inner[data-v-c21a6b6f]{flex-direction:column;justify-content:center;height:100%;padding:1rem 0;display:flex;overflow-y:auto}.slide-horizontal[data-v-c21a6b6f]{height:100%;max-width:var(--container-max);justify-content:center;align-items:center;gap:2rem;margin:0 auto;padding:2rem 1.5rem;display:flex}.slide-col[data-v-c21a6b6f]{flex:1;min-width:0;overflow-y:auto}.scroll-hint[data-v-c21a6b6f]{z-index:5;pointer-events:none;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;display:flex;position:absolute;bottom:1.75rem;left:50%;transform:translate(-50%)}.scroll-mouse[data-v-c21a6b6f]{border:2px solid var(--color-accent);opacity:.85;border-radius:14px;width:26px;height:42px;display:block;position:relative}.scroll-mouse-wheel[data-v-c21a6b6f]{background:var(--color-accent);border-radius:2px;width:3px;height:8px;animation:1.6s cubic-bezier(.4,0,.6,1) infinite scrollWheel-c21a6b6f;position:absolute;top:5px;left:50%;transform:translate(-50%)}@keyframes scrollWheel-c21a6b6f{0%{opacity:0;transform:translate(-50%)}25%{opacity:1}75%{opacity:1;transform:translate(-50%,6px)}to{opacity:0;transform:translate(-50%,8px)}}.scroll-hint-fade-enter-active[data-v-c21a6b6f],.scroll-hint-fade-leave-active[data-v-c21a6b6f]{transition:opacity .35s}.scroll-hint-fade-enter-from[data-v-c21a6b6f],.scroll-hint-fade-leave-to[data-v-c21a6b6f]{opacity:0}@media (prefers-reduced-motion:reduce){.scroll-mouse-wheel[data-v-c21a6b6f]{animation:none}}.detail-page[data-v-5e75c244]{min-height:100vh}.detail-container[data-v-5e75c244]{max-width:800px;padding-top:2rem;padding-bottom:4rem}.back-link[data-v-5e75c244]{color:var(--color-text-muted);margin-bottom:2rem;font-size:.9rem;transition:color .2s;display:inline-block}.back-link[data-v-5e75c244]:hover{color:var(--color-accent)}.detail-loading[data-v-5e75c244]{text-align:center;color:var(--color-text-muted);padding:4rem 0}.detail-article h1[data-v-5e75c244]{margin-bottom:1rem;font-size:2.25rem}.detail-tags[data-v-5e75c244]{flex-wrap:wrap;gap:.4rem;margin-bottom:2rem;display:flex}.detail-hero-img[data-v-5e75c244]{border-radius:var(--radius-lg);width:100%;margin-bottom:2rem}.detail-body[data-v-5e75c244]{color:var(--color-text);margin-bottom:2rem;font-size:1.05rem;line-height:1.8}.detail-actions[data-v-5e75c244]{gap:1rem;display:flex}.spinner[data-v-5e75c244]{border:3px solid var(--c-gray-200);border-top-color:var(--color-accent);border-radius:50%;width:36px;height:36px;margin:0 auto;animation:.7s linear infinite spin-5e75c244}@keyframes spin-5e75c244{to{transform:rotate(360deg)}}.loading-screen[data-v-c254e447]{min-height:calc(100vh - var(--nav-height));color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.spinner[data-v-c254e447]{border:3px solid var(--c-gray-200);border-top-color:var(--color-accent);border-radius:50%;width:36px;height:36px;animation:.7s linear infinite spin-c254e447}@keyframes spin-c254e447{to{transform:rotate(360deg)}}.projects-grid[data-v-c254e447]{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;display:grid}.project-card[data-v-c254e447]{color:inherit;flex-direction:column;display:flex}.project-img[data-v-c254e447]{aspect-ratio:16/10;background:var(--c-gray-100);overflow:hidden}.project-img img[data-v-c254e447]{object-fit:cover;width:100%;height:100%;transition:transform .3s}.project-card:hover .project-img img[data-v-c254e447]{transform:scale(1.04)}.project-img--placeholder[data-v-c254e447]{color:var(--c-gray-400);justify-content:center;align-items:center;display:flex}.project-body[data-v-c254e447]{flex-direction:column;flex:1;padding:1rem 1.25rem;display:flex}.project-body h3[data-v-c254e447]{margin-bottom:.35rem;font-size:1.05rem}.project-body p[data-v-c254e447]{color:var(--color-text-muted);flex:1;margin-bottom:.75rem;font-size:.9rem;line-height:1.6}.project-tags[data-v-c254e447]{flex-wrap:wrap;gap:.4rem;display:flex}.empty-msg[data-v-c254e447]{text-align:center;color:var(--color-text-muted);padding:3rem 0}@media (width<=480px){.projects-grid[data-v-c254e447]{grid-template-columns:1fr}}.detail-page[data-v-6488fba8]{min-height:100vh}.detail-container[data-v-6488fba8]{max-width:750px;padding-top:2rem;padding-bottom:4rem}.back-link[data-v-6488fba8]{color:var(--color-text-muted);margin-bottom:2rem;font-size:.9rem;transition:color .2s;display:inline-block}.back-link[data-v-6488fba8]:hover{color:var(--color-accent)}.detail-loading[data-v-6488fba8]{text-align:center;color:var(--color-text-muted);padding:4rem 0}.detail-article time[data-v-6488fba8]{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.85rem}.detail-article h1[data-v-6488fba8]{margin:.5rem 0 1rem;font-size:2.25rem}.detail-excerpt[data-v-6488fba8]{color:var(--color-text-muted);margin-bottom:2rem;font-size:1.15rem;line-height:1.6}.detail-hero-img[data-v-6488fba8]{border-radius:var(--radius-lg);width:100%;margin-bottom:2rem}.detail-body[data-v-6488fba8]{color:var(--color-text);font-size:1.05rem;line-height:1.85}.detail-body[data-v-6488fba8] h2{margin:2rem 0 1rem;font-size:1.5rem}.detail-body[data-v-6488fba8] h3{margin:1.5rem 0 .75rem;font-size:1.25rem}.detail-body[data-v-6488fba8] p{margin-bottom:1.25rem}.detail-body[data-v-6488fba8] ul,.detail-body[data-v-6488fba8] ol{list-style:revert;margin-bottom:1.25rem;padding-left:1.5rem}.detail-body[data-v-6488fba8] a{color:var(--color-accent);text-decoration:underline}.detail-body[data-v-6488fba8] img{border-radius:var(--radius-md);margin:1.5rem 0}.detail-body[data-v-6488fba8] pre{background:var(--c-gray-900);color:var(--c-gray-100);border-radius:var(--radius-md);font-family:var(--font-mono);margin-bottom:1.25rem;padding:1rem;font-size:.9rem;overflow-x:auto}.detail-body[data-v-6488fba8] code{font-family:var(--font-mono);background:var(--c-gray-100);border-radius:var(--radius-sm);padding:.15rem .35rem;font-size:.9em}.detail-body[data-v-6488fba8] pre code{background:0 0;padding:0}.detail-body[data-v-6488fba8] blockquote{border-left:3px solid var(--color-accent);color:var(--color-text-muted);margin:1.5rem 0;padding-left:1rem;font-style:italic}.spinner[data-v-6488fba8]{border:3px solid var(--c-gray-200);border-top-color:var(--color-accent);border-radius:50%;width:36px;height:36px;margin:0 auto;animation:.7s linear infinite spin-6488fba8}@keyframes spin-6488fba8{to{transform:rotate(360deg)}}.loading-screen[data-v-87a646cc]{min-height:calc(100vh - var(--nav-height));color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.spinner[data-v-87a646cc]{border:3px solid var(--c-gray-200);border-top-color:var(--color-accent);border-radius:50%;width:36px;height:36px;animation:.7s linear infinite spin-87a646cc}@keyframes spin-87a646cc{to{transform:rotate(360deg)}}.blog-grid[data-v-87a646cc]{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;display:grid}.blog-card[data-v-87a646cc]{color:inherit;flex-direction:column;display:flex}.blog-img[data-v-87a646cc]{aspect-ratio:16/9;background:var(--c-gray-100);overflow:hidden}.blog-img img[data-v-87a646cc]{object-fit:cover;width:100%;height:100%;transition:transform .3s}.blog-card:hover .blog-img img[data-v-87a646cc]{transform:scale(1.04)}.blog-body[data-v-87a646cc]{flex:1;padding:1.25rem}.blog-body time[data-v-87a646cc]{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.8rem}.blog-body h3[data-v-87a646cc]{margin:.4rem 0 .5rem;font-size:1.1rem}.blog-body p[data-v-87a646cc]{color:var(--color-text-muted);font-size:.9rem;line-height:1.6}.empty-msg[data-v-87a646cc]{text-align:center;color:var(--color-text-muted);padding:3rem 0}.testimonials-grid[data-v-a5675b22]{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.testimonial-card[data-v-a5675b22]{padding:1.25rem;position:relative}.quote-mark[data-v-a5675b22]{color:var(--color-accent);pointer-events:none;opacity:.15;font-family:Georgia,serif;font-size:3.5rem;line-height:1;position:absolute;top:.75rem;left:1.25rem}.testimonial-text[data-v-a5675b22]{color:var(--color-text);margin-bottom:1rem;font-size:.88rem;font-style:italic;line-height:1.6}.testimonial-footer[data-v-a5675b22]{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.testimonial-footer strong[data-v-a5675b22]{font-size:.9rem;display:block}.testimonial-footer span[data-v-a5675b22]{color:var(--color-text-muted);font-size:.8rem}.testimonial-avatar[data-v-a5675b22]{object-fit:cover;border-radius:50%;flex-shrink:0;width:44px;height:44px}.testimonial-avatar--placeholder[data-v-a5675b22]{background:var(--c-accent-bg);color:var(--color-accent);justify-content:center;align-items:center;font-size:1.1rem;font-weight:700;display:flex}.testimonial-stars[data-v-a5675b22]{color:var(--c-gray-300);gap:2px;font-size:.9rem;display:flex}.testimonial-stars .filled[data-v-a5675b22]{color:#f59e0b}.loading-screen[data-v-6a75f2b9]{min-height:calc(100vh - var(--nav-height));color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.spinner[data-v-6a75f2b9]{border:3px solid var(--c-gray-200);border-top-color:var(--color-accent);border-radius:50%;width:36px;height:36px;animation:.7s linear infinite spin-6a75f2b9}@keyframes spin-6a75f2b9{to{transform:rotate(360deg)}}.about-layout[data-v-6a75f2b9]{align-items:flex-start;gap:3rem;max-width:800px;margin:0 auto;display:flex}.about-photo[data-v-6a75f2b9]{flex-shrink:0;width:240px}.about-photo img[data-v-6a75f2b9]{border-radius:50%;width:100%;height:auto}.about-content[data-v-6a75f2b9]{flex:1}.about-bio[data-v-6a75f2b9]{color:var(--color-text);text-align:justify;margin-bottom:1.5rem;font-size:1.05rem;line-height:1.8}.about-details[data-v-6a75f2b9]{flex-direction:column;gap:.75rem;display:flex}.about-details li[data-v-6a75f2b9]{gap:.75rem;display:flex}.detail-label[data-v-6a75f2b9]{min-width:90px;color:var(--color-heading);font-weight:600}.testimonials-wrap[data-v-6a75f2b9]{background:var(--color-bg-alt);border-top:1px solid var(--color-border)}@media (width<=768px){.about-layout[data-v-6a75f2b9]{text-align:center;flex-direction:column;align-items:center}.about-photo[data-v-6a75f2b9]{width:180px}.about-details[data-v-6a75f2b9]{align-items:center}.about-details li[data-v-6a75f2b9]{flex-direction:column;gap:.25rem}}.loading-screen[data-v-4b4ddb95]{min-height:calc(100vh - var(--nav-height));color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.spinner[data-v-4b4ddb95]{border:3px solid var(--c-gray-200);border-top-color:var(--color-accent);border-radius:50%;width:36px;height:36px;animation:.7s linear infinite spin-4b4ddb95}@keyframes spin-4b4ddb95{to{transform:rotate(360deg)}}.resume-columns[data-v-4b4ddb95]{grid-template-columns:1fr 1fr;gap:3rem;display:grid}.resume-col-title[data-v-4b4ddb95]{text-transform:uppercase;letter-spacing:.05em;color:var(--color-accent);margin-bottom:1.5rem;font-size:1.1rem}.timeline[data-v-4b4ddb95]{border-left:2px solid var(--c-gray-200);padding-left:1.5rem;position:relative}.timeline-item[data-v-4b4ddb95]{padding-bottom:2rem;position:relative}.timeline-item[data-v-4b4ddb95]:last-child{padding-bottom:0}.timeline-dot[data-v-4b4ddb95]{background:var(--color-accent);border:2px solid var(--color-bg);width:10px;height:10px;box-shadow:0 0 0 2px var(--color-accent);border-radius:50%;position:absolute;top:.35rem;left:-1.625rem}.timeline-content h4[data-v-4b4ddb95]{margin-bottom:.15rem;font-size:1rem}.timeline-company[data-v-4b4ddb95]{color:var(--color-text-muted);font-size:.9rem;font-weight:600;display:block}.timeline-date[data-v-4b4ddb95]{color:var(--color-text-muted);background:var(--c-gray-100);border-radius:var(--radius-sm);margin:.25rem 0 .5rem;padding:.15rem .5rem;font-size:.8rem;display:inline-block}.timeline-content p[data-v-4b4ddb95]{color:var(--color-text-muted);font-size:.9rem;line-height:1.6}.resume-download[data-v-4b4ddb95]{text-align:center;margin-top:3rem}@media (width<=768px){.resume-columns[data-v-4b4ddb95]{grid-template-columns:1fr;gap:2rem}}
/*$vite$:1*/