.hero[data-astro-cid-bbe6dxrz]{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;padding:6rem 1rem 4rem;overflow:hidden}.hero-sky[data-astro-cid-bbe6dxrz]{position:absolute;inset:0;background:var(--sky-gradient);z-index:0;transition:background .8s ease}.day-elements[data-astro-cid-bbe6dxrz]{position:absolute;inset:0;pointer-events:none;opacity:1;transition:opacity .8s ease}[data-theme=dark] .day-elements[data-astro-cid-bbe6dxrz]{opacity:0}.clouds-container[data-astro-cid-bbe6dxrz]{position:absolute;inset:0;overflow:hidden;z-index:2}.cloud[data-astro-cid-bbe6dxrz]{position:absolute;opacity:.95;filter:drop-shadow(0 4px 6px rgba(0,0,0,.1))}.cloud-1[data-astro-cid-bbe6dxrz]{width:250px;top:8%;left:0;animation:cloud-drift 80s linear infinite;animation-delay:-10s}.cloud-2[data-astro-cid-bbe6dxrz]{width:200px;top:18%;left:0;animation:cloud-drift 60s linear infinite;animation-delay:-25s}.cloud-3[data-astro-cid-bbe6dxrz]{width:150px;top:12%;left:0;animation:cloud-drift 50s linear infinite;animation-delay:-35s}.cloud-4[data-astro-cid-bbe6dxrz]{width:180px;top:28%;left:0;animation:cloud-drift 70s linear infinite;animation-delay:-50s}.cloud-5[data-astro-cid-bbe6dxrz]{width:120px;top:22%;left:0;animation:cloud-drift 55s linear infinite;animation-delay:-40s;opacity:.9}.cloud-6[data-astro-cid-bbe6dxrz]{width:200px;top:15%;left:0;animation:cloud-drift 90s linear infinite;animation-delay:-70s;opacity:.6}@keyframes cloud-drift{0%{transform:translate(-100%)}to{transform:translate(calc(100vw + 100%))}}.clouds-background[data-astro-cid-bbe6dxrz]{position:absolute;inset:0;overflow:hidden;z-index:1}.cloud-bg[data-astro-cid-bbe6dxrz]{position:absolute;opacity:.4;filter:blur(8px)}.cloud-bg-1[data-astro-cid-bbe6dxrz]{width:280px;top:5%;left:0;animation:cloud-drift 120s linear infinite;animation-delay:-20s}.cloud-bg-2[data-astro-cid-bbe6dxrz]{width:240px;top:20%;left:0;animation:cloud-drift 100s linear infinite;animation-delay:-60s}.cloud-bg-3[data-astro-cid-bbe6dxrz]{width:200px;top:10%;left:0;animation:cloud-drift 110s linear infinite;animation-delay:-90s}.sun-container[data-astro-cid-bbe6dxrz]{position:absolute;top:10%;left:15%;z-index:1}.sun[data-astro-cid-bbe6dxrz]{position:relative;width:120px;height:120px}.sun-glow[data-astro-cid-bbe6dxrz]{position:absolute;inset:-30px;background:radial-gradient(circle,rgba(255,215,0,.4) 0%,transparent 70%);border-radius:50%;animation:pulse-glow 3s ease-in-out infinite}.sun-core[data-astro-cid-bbe6dxrz]{position:absolute;inset:0;background:radial-gradient(circle,#fffacd,gold,orange);border-radius:50%;box-shadow:0 0 60px #ffd70099}.birds-container[data-astro-cid-bbe6dxrz]{position:absolute;inset:0;overflow:hidden;z-index:3}.bird[data-astro-cid-bbe6dxrz]{position:absolute;width:20px;height:10px;opacity:.6;animation:bird-fly 1.5s ease-in-out infinite,bird-drift 40s linear infinite}.bird-1[data-astro-cid-bbe6dxrz]{top:15%;animation-delay:0s,0s;animation-duration:1.2s,35s}.bird-2[data-astro-cid-bbe6dxrz]{top:22%;animation-delay:.3s,-10s;animation-duration:1.4s,42s}.bird-3[data-astro-cid-bbe6dxrz]{top:12%;animation-delay:.6s,-20s;animation-duration:1.3s,38s}.bird-4[data-astro-cid-bbe6dxrz]{top:28%;animation-delay:.9s,-30s;animation-duration:1.5s,45s}.bird-5[data-astro-cid-bbe6dxrz]{top:18%;animation-delay:1.2s,-15s;animation-duration:1.1s,40s}@keyframes bird-fly{0%,to{transform:scaleY(1)}50%{transform:scaleY(.6)}}@keyframes bird-drift{0%{left:-5%}to{left:105%}}.sea-container-light[data-astro-cid-bbe6dxrz]{position:absolute;bottom:0;left:0;right:0;height:35%;z-index:4}.sea-horizon-light[data-astro-cid-bbe6dxrz]{position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent)}.sea-light[data-astro-cid-bbe6dxrz]{position:absolute;inset:0;background:linear-gradient(180deg,#3a9bc7,#2b7a9b,#1e6a8a);overflow:hidden}.sea-wave-light[data-astro-cid-bbe6dxrz]{position:absolute;left:0;right:0;height:20px;background:linear-gradient(180deg,rgba(100,180,220,.4) 0%,transparent 100%)}.wave-light-1[data-astro-cid-bbe6dxrz]{top:10%;animation:wave 6s ease-in-out infinite}.wave-light-2[data-astro-cid-bbe6dxrz]{top:30%;animation:wave 8s ease-in-out infinite;animation-delay:-2s}.wave-light-3[data-astro-cid-bbe6dxrz]{top:50%;animation:wave 7s ease-in-out infinite;animation-delay:-4s}.night-elements[data-astro-cid-bbe6dxrz]{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .8s ease}[data-theme=dark] .night-elements[data-astro-cid-bbe6dxrz]{opacity:1}.stars-container[data-astro-cid-bbe6dxrz]{position:absolute;inset:0;overflow:hidden}.stars-container[data-astro-cid-bbe6dxrz] .star{position:absolute;background:#fff;border-radius:50%;animation:star-twinkle 3s ease-in-out infinite}@keyframes star-twinkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.8)}}.moon-container[data-astro-cid-bbe6dxrz]{position:absolute;top:10%;right:15%;z-index:2}.moon[data-astro-cid-bbe6dxrz]{position:relative;width:100px;height:100px}.moon-glow[data-astro-cid-bbe6dxrz]{position:absolute;inset:-25px;background:radial-gradient(circle,rgba(245,245,220,.3) 0%,transparent 70%);border-radius:50%;animation:pulse-glow 4s ease-in-out infinite}.moon-core[data-astro-cid-bbe6dxrz]{position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,ivory,beige,#e8e4d4);border-radius:50%;box-shadow:0 0 40px #f5f5dc66;overflow:hidden}.moon-crater[data-astro-cid-bbe6dxrz]{position:absolute;background:#c8c8b44d;border-radius:50%}.crater-1[data-astro-cid-bbe6dxrz]{width:20px;height:20px;top:20%;left:25%}.crater-2[data-astro-cid-bbe6dxrz]{width:12px;height:12px;top:50%;left:55%}.crater-3[data-astro-cid-bbe6dxrz]{width:15px;height:15px;top:65%;left:30%}.sea-container[data-astro-cid-bbe6dxrz]{position:absolute;bottom:0;left:0;right:0;height:35%}.sea-horizon[data-astro-cid-bbe6dxrz]{position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent)}.sea[data-astro-cid-bbe6dxrz]{position:absolute;inset:0;background:linear-gradient(180deg,#0a1628,#0d1b2a,#0f1729);overflow:hidden}.sea-wave[data-astro-cid-bbe6dxrz]{position:absolute;left:0;right:0;height:20px;background:linear-gradient(180deg,rgba(30,58,95,.3) 0%,transparent 100%)}.wave-1[data-astro-cid-bbe6dxrz]{top:10%;animation:wave 6s ease-in-out infinite}.wave-2[data-astro-cid-bbe6dxrz]{top:30%;animation:wave 8s ease-in-out infinite;animation-delay:-2s}.wave-3[data-astro-cid-bbe6dxrz]{top:50%;animation:wave 7s ease-in-out infinite;animation-delay:-4s}@keyframes wave{0%,to{transform:translate(0) scaleY(1);opacity:.5}50%{transform:translate(-3%) scaleY(1.2);opacity:.7}}.hero-content[data-astro-cid-bbe6dxrz]{position:relative;z-index:10;max-width:900px;text-align:center}.hero-greeting[data-astro-cid-bbe6dxrz]{font-family:var(--font-pixel);font-size:.625rem;color:var(--text-primary);margin-bottom:1.5rem;letter-spacing:2px}.greeting-bracket[data-astro-cid-bbe6dxrz]{color:var(--accent-secondary)}.hero-name[data-astro-cid-bbe6dxrz]{margin-bottom:1.5rem}.name-label[data-astro-cid-bbe6dxrz]{display:block;font-family:var(--font-display);font-size:1rem;color:var(--text-secondary);margin-bottom:.5rem}.name-main[data-astro-cid-bbe6dxrz]{display:block;font-family:var(--font-pixel);font-size:clamp(1.5rem,5vw,2.5rem);color:var(--text-primary);line-height:1.4}.name-accent[data-astro-cid-bbe6dxrz]{color:var(--accent-secondary)}.hero-title[data-astro-cid-bbe6dxrz]{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:2rem;padding:1rem 1.5rem;background-color:var(--accent-highlight);border:3px solid var(--border-color);box-shadow:6px 6px 0 0 var(--border-color)}[data-theme=dark] .hero-title[data-astro-cid-bbe6dxrz]{background-color:var(--accent-primary);color:#fff}.title-decorator[data-astro-cid-bbe6dxrz]{font-family:var(--font-pixel);font-size:.75rem;color:var(--text-primary)}[data-theme=dark] .title-decorator[data-astro-cid-bbe6dxrz]{color:#fff}.title-text[data-astro-cid-bbe6dxrz]{font-family:var(--font-display);font-size:clamp(.875rem,2.5vw,1.25rem);font-weight:700;color:var(--text-primary);text-transform:uppercase;letter-spacing:2px}[data-theme=dark] .title-text[data-astro-cid-bbe6dxrz]{color:#fff}.hero-subtitle[data-astro-cid-bbe6dxrz]{font-size:1rem;color:var(--text-primary);line-height:1.8;margin-bottom:2.5rem;max-width:600px;margin-left:auto;margin-right:auto;background:var(--bg-secondary);padding:1rem;border-radius:4px;border:1px solid var(--border-color)}.highlight[data-astro-cid-bbe6dxrz]{color:var(--accent-secondary);font-weight:600}.hero-cta[data-astro-cid-bbe6dxrz]{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:3rem}.btn-hero-primary[data-astro-cid-bbe6dxrz]{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-pixel);font-size:.625rem;padding:1rem 1.5rem;background-color:var(--accent-primary);color:#fff;border:3px solid var(--border-color);box-shadow:4px 4px 0 0 var(--border-color);text-decoration:none;text-transform:uppercase;transition:all .1s ease}.btn-hero-primary[data-astro-cid-bbe6dxrz]:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 0 var(--border-color);background-color:var(--accent-secondary)}.btn-icon[data-astro-cid-bbe6dxrz]{font-size:.5rem}.btn-hero-secondary[data-astro-cid-bbe6dxrz]{display:inline-flex;align-items:center;font-family:var(--font-pixel);font-size:.625rem;padding:1rem 1.5rem;background-color:var(--bg-secondary);color:var(--text-primary);border:3px solid var(--border-color);box-shadow:4px 4px 0 0 var(--border-color);text-decoration:none;text-transform:uppercase;transition:all .1s ease}.btn-hero-secondary[data-astro-cid-bbe6dxrz]:hover{background-color:var(--accent-highlight);transform:translate(2px,2px);box-shadow:2px 2px 0 0 var(--border-color)}[data-theme=dark] .btn-hero-secondary[data-astro-cid-bbe6dxrz]:hover{color:var(--color-ink)}.hero-stack[data-astro-cid-bbe6dxrz]{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.75rem}.stack-label[data-astro-cid-bbe6dxrz]{font-family:var(--font-pixel);font-size:.5rem;color:var(--text-secondary)}.stack-items[data-astro-cid-bbe6dxrz]{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.stack-item[data-astro-cid-bbe6dxrz]{font-family:var(--font-display);font-size:.75rem;padding:.375rem .75rem;background-color:var(--bg-secondary);color:var(--text-primary);border:2px solid var(--border-color)}@keyframes pulse-glow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}@media(max-width:768px){.hero[data-astro-cid-bbe6dxrz]{padding:4rem 1rem 3rem}.sun[data-astro-cid-bbe6dxrz]{width:80px;height:80px}.sun-container[data-astro-cid-bbe6dxrz]{left:10%;top:8%}.moon[data-astro-cid-bbe6dxrz]{width:70px;height:70px}.moon-container[data-astro-cid-bbe6dxrz]{right:10%;top:8%}.cloud-3[data-astro-cid-bbe6dxrz],.cloud-4[data-astro-cid-bbe6dxrz],.cloud-5[data-astro-cid-bbe6dxrz],.cloud-6[data-astro-cid-bbe6dxrz]{display:none}.cloud-1[data-astro-cid-bbe6dxrz]{width:150px}.cloud-2[data-astro-cid-bbe6dxrz]{width:130px}.clouds-background[data-astro-cid-bbe6dxrz],.birds-container[data-astro-cid-bbe6dxrz]{display:none}.sea-container-light[data-astro-cid-bbe6dxrz],.sea-container[data-astro-cid-bbe6dxrz]{height:25%}.hero-title[data-astro-cid-bbe6dxrz]{flex-direction:column;gap:.5rem}.hero-cta[data-astro-cid-bbe6dxrz]{flex-direction:column;align-items:center}.btn-hero-primary[data-astro-cid-bbe6dxrz],.btn-hero-secondary[data-astro-cid-bbe6dxrz]{width:100%;max-width:280px;justify-content:center}}@media(prefers-reduced-motion:reduce){.cloud[data-astro-cid-bbe6dxrz],.cloud-bg[data-astro-cid-bbe6dxrz],.bird[data-astro-cid-bbe6dxrz],.stars-container[data-astro-cid-bbe6dxrz] .star,.sea-wave[data-astro-cid-bbe6dxrz],.sea-wave-light[data-astro-cid-bbe6dxrz],.sun-glow[data-astro-cid-bbe6dxrz],.moon-glow[data-astro-cid-bbe6dxrz]{animation:none!important}.day-elements[data-astro-cid-bbe6dxrz],.night-elements[data-astro-cid-bbe6dxrz],.hero-sky[data-astro-cid-bbe6dxrz]{transition:none!important}}.skills[data-astro-cid-ab4ihpzs]{padding:6rem 1rem;background-color:var(--bg-primary);position:relative;overflow:hidden}.skills[data-astro-cid-ab4ihpzs]:before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--border-color) 1px,transparent 1px),linear-gradient(90deg,var(--border-color) 1px,transparent 1px);background-size:40px 40px;opacity:.05;pointer-events:none}[data-theme=dark] .skills[data-astro-cid-ab4ihpzs]:before{opacity:.12}.section-header[data-astro-cid-ab4ihpzs]{max-width:1400px;margin:0 auto 3rem;text-align:center;position:relative;z-index:1}.section-tag[data-astro-cid-ab4ihpzs]{font-family:var(--font-pixel);font-size:.5rem;color:var(--accent-secondary);letter-spacing:2px}.section-title[data-astro-cid-ab4ihpzs]{font-family:var(--font-pixel);font-size:clamp(1rem,3vw,1.5rem);color:var(--text-primary);margin:1rem 0;display:flex;align-items:center;justify-content:center;gap:.75rem}.title-decorator[data-astro-cid-ab4ihpzs]{color:var(--accent-primary)}.section-subtitle[data-astro-cid-ab4ihpzs]{font-family:var(--font-display);font-size:1rem;color:var(--text-secondary)}.tree-branches[data-astro-cid-ab4ihpzs]{max-width:900px;margin:0 auto;padding:0 1rem;position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}.tree-icon[data-astro-cid-ab4ihpzs]{width:120px;height:120px;margin-bottom:.25rem;-webkit-mask:url(/_astro/tech-tree.DNWdDd1L.svg) center/contain no-repeat;mask:url(/_astro/tech-tree.DNWdDd1L.svg) center/contain no-repeat;background:linear-gradient(to bottom,var(--accent-secondary) 0%,var(--accent-primary) 25%,var(--accent-highlight) 50%,var(--accent-primary) 75%,var(--accent-secondary) 100%);background-size:100% 200%;animation:gradient-flow 6s ease-in-out infinite}@keyframes gradient-flow{0%{background-position:0% 0%}50%{background-position:0% 100%}to{background-position:0% 0%}}.branch-lines[data-astro-cid-ab4ihpzs]{width:100%;height:40px;display:block}.tree-bottom[data-astro-cid-ab4ihpzs]{display:none}@media(max-width:600px){.tree-branches[data-astro-cid-ab4ihpzs]{display:flex;margin-bottom:0}.tree-icon[data-astro-cid-ab4ihpzs]{width:70px;height:70px;-webkit-mask:url(/_astro/tech-tree.DNWdDd1L.svg) center/contain no-repeat;mask:url(/_astro/tech-tree.DNWdDd1L.svg) center/contain no-repeat}.branch-lines[data-astro-cid-ab4ihpzs]{display:none}.skill-tree[data-astro-cid-ab4ihpzs]{position:relative}.skill-tree[data-astro-cid-ab4ihpzs]:before{content:"";position:absolute;left:50%;top:0;transform:translate(-50%);width:3px;height:100%;background:linear-gradient(to bottom,var(--accent-secondary) 0%,var(--accent-primary) 25%,var(--accent-highlight) 50%,var(--accent-primary) 75%,var(--accent-secondary) 100%);background-size:100% 200%;animation:gradient-flow 6s ease-in-out infinite;border-radius:2px;z-index:0}.tech-column[data-astro-cid-ab4ihpzs]{position:relative;z-index:1;background:var(--bg-primary);padding:.5rem;border-radius:4px}.tree-bottom[data-astro-cid-ab4ihpzs]{display:flex;justify-content:center;position:relative;z-index:1}.bottom-tree-icon[data-astro-cid-ab4ihpzs]{width:50px;height:50px;transform:rotate(180deg);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath fill='white' d='M29,62a10,10,0,0,0,9.53-7A9,9,0,0,1,47,64V75H35v6H65V75H53V64a9,9,0,0,1,8.47-9,10,10,0,1,0,0-6A14.9,14.9,0,0,0,53,52V38.54a10,10,0,1,0-6,0V52a14.9,14.9,0,0,0-8.45-3A10,10,0,1,0,29,62ZM71,48a4,4,0,1,1-4,4A4,4,0,0,1,71,48ZM50,25a4,4,0,1,1-4,4A4,4,0,0,1,50,25ZM29,48a4,4,0,1,1-4,4A4,4,0,0,1,29,48Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath fill='white' d='M29,62a10,10,0,0,0,9.53-7A9,9,0,0,1,47,64V75H35v6H65V75H53V64a9,9,0,0,1,8.47-9,10,10,0,1,0,0-6A14.9,14.9,0,0,0,53,52V38.54a10,10,0,1,0-6,0V52a14.9,14.9,0,0,0-8.45-3A10,10,0,1,0,29,62ZM71,48a4,4,0,1,1-4,4A4,4,0,0,1,71,48ZM50,25a4,4,0,1,1-4,4A4,4,0,0,1,50,25ZM29,48a4,4,0,1,1-4,4A4,4,0,0,1,29,48Z'/%3E%3C/svg%3E") center/contain no-repeat;background:linear-gradient(to bottom,var(--accent-secondary) 0%,var(--accent-primary) 25%,var(--accent-highlight) 50%,var(--accent-primary) 75%,var(--accent-secondary) 100%);background-size:100% 200%;animation:gradient-flow 6s ease-in-out infinite}}.skill-tree[data-astro-cid-ab4ihpzs]{display:flex;justify-content:center;gap:2rem;padding:2rem 1rem;max-width:1200px;margin:0 auto;position:relative;z-index:1}.tech-column[data-astro-cid-ab4ihpzs]{display:flex;flex-direction:column;align-items:center;flex:1;max-width:280px;min-width:0}.column-header[data-astro-cid-ab4ihpzs]{display:flex;align-items:center;gap:.625rem;padding:.75rem 1.5rem;border:3px solid var(--border-color);box-shadow:4px 4px 0 0 var(--border-color);margin-bottom:1.25rem;transition:transform .2s ease,box-shadow .2s ease}.column-header[data-astro-cid-ab4ihpzs]:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 0 var(--border-color)}.category-icon[data-astro-cid-ab4ihpzs]{font-size:.875rem}.category-title[data-astro-cid-ab4ihpzs]{font-family:var(--font-pixel);font-size:.625rem;text-transform:uppercase;letter-spacing:1px}[data-astro-cid-ab4ihpzs][data-category=frontend] .column-header[data-astro-cid-ab4ihpzs]{background:var(--accent-secondary)}[data-astro-cid-ab4ihpzs][data-category=frontend] .category-icon[data-astro-cid-ab4ihpzs],[data-astro-cid-ab4ihpzs][data-category=frontend] .category-title[data-astro-cid-ab4ihpzs]{color:#1a1a2e}[data-astro-cid-ab4ihpzs][data-category=backend] .column-header[data-astro-cid-ab4ihpzs]{background:var(--accent-primary)}[data-astro-cid-ab4ihpzs][data-category=backend] .category-icon[data-astro-cid-ab4ihpzs],[data-astro-cid-ab4ihpzs][data-category=backend] .category-title[data-astro-cid-ab4ihpzs],[data-theme=dark] [data-astro-cid-ab4ihpzs][data-category=frontend] .category-icon[data-astro-cid-ab4ihpzs],[data-theme=dark] [data-astro-cid-ab4ihpzs][data-category=frontend] .category-title[data-astro-cid-ab4ihpzs],[data-theme=dark] [data-astro-cid-ab4ihpzs][data-category=backend] .category-icon[data-astro-cid-ab4ihpzs],[data-theme=dark] [data-astro-cid-ab4ihpzs][data-category=backend] .category-title[data-astro-cid-ab4ihpzs]{color:var(--color-ink)}[data-astro-cid-ab4ihpzs][data-category=tools] .column-header[data-astro-cid-ab4ihpzs]{background:var(--accent-highlight)}[data-astro-cid-ab4ihpzs][data-category=tools] .category-icon[data-astro-cid-ab4ihpzs],[data-astro-cid-ab4ihpzs][data-category=tools] .category-title[data-astro-cid-ab4ihpzs]{color:var(--color-ink)}.skill-chain[data-astro-cid-ab4ihpzs]{display:flex;flex-direction:column;align-items:center}.skill-node[data-astro-cid-ab4ihpzs]{padding:.625rem 1rem;background:var(--bg-card);border:2px solid var(--border-color);box-shadow:2px 2px 0 0 var(--border-color);font-family:var(--font-pixel);font-size:.5rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-primary);transition:transform .2s ease,box-shadow .2s ease!important;cursor:pointer;min-width:100px;text-align:center;white-space:nowrap}[data-astro-cid-ab4ihpzs][data-category=frontend] .skill-node[data-astro-cid-ab4ihpzs]{background:var(--accent-secondary);color:#1a1a2e;box-shadow:2px 2px 0 0 var(--border-color)}[data-astro-cid-ab4ihpzs][data-category=backend] .skill-node[data-astro-cid-ab4ihpzs]{background:var(--accent-primary);color:var(--color-ink);box-shadow:2px 2px 0 0 var(--border-color)}[data-astro-cid-ab4ihpzs][data-category=tools] .skill-node[data-astro-cid-ab4ihpzs]{background:var(--accent-highlight);color:var(--color-ink);box-shadow:2px 2px 0 0 var(--border-color)}[data-theme=dark] [data-astro-cid-ab4ihpzs][data-category=frontend] .skill-node[data-astro-cid-ab4ihpzs],[data-theme=dark] [data-astro-cid-ab4ihpzs][data-category=backend] .skill-node[data-astro-cid-ab4ihpzs]{color:var(--color-ink)}.skill-node[data-astro-cid-ab4ihpzs]:hover{transform:scale(1) translate(1px,1px)!important;box-shadow:1px 1px 0 0 var(--border-color)!important}.connector-line[data-astro-cid-ab4ihpzs]{width:2px;height:1.25rem;background:var(--border-color)}.hobby-note[data-astro-cid-ab4ihpzs]{max-width:800px;margin:3rem auto 0;padding:1rem 1.5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;display:flex;align-items:center;gap:1rem;position:relative;z-index:1}.hobby-icon[data-astro-cid-ab4ihpzs]{width:48px;height:48px;padding:2px;flex-shrink:0;display:flex;align-items:center;background-color:var(--accent-primary);border:2px solid var(--border-color);color:var(--color-ink)}.hobby-icon[data-astro-cid-ab4ihpzs] svg{width:100%;height:100%}.hobby-text[data-astro-cid-ab4ihpzs]{font-size:.9rem;color:var(--text-primary);line-height:1.6;margin:0}.hobby-text[data-astro-cid-ab4ihpzs] a[data-astro-cid-ab4ihpzs]{color:inherit;text-decoration:underline;text-underline-offset:2px}.hobby-text[data-astro-cid-ab4ihpzs] a[data-astro-cid-ab4ihpzs]:hover{color:var(--accent-secondary)}.hobby-text[data-astro-cid-ab4ihpzs] .highlight[data-astro-cid-ab4ihpzs]{color:var(--accent-secondary);font-weight:600}.section-footer[data-astro-cid-ab4ihpzs]{text-align:center;margin-top:3rem;position:relative;z-index:1}@media(max-width:1200px){.skill-tree[data-astro-cid-ab4ihpzs]{gap:1.5rem;padding:1.5rem .5rem}.tech-column[data-astro-cid-ab4ihpzs]{max-width:220px}.column-header[data-astro-cid-ab4ihpzs]{padding:.6rem 1rem}.category-title[data-astro-cid-ab4ihpzs]{font-size:.5rem;letter-spacing:.5px}.category-icon[data-astro-cid-ab4ihpzs]{font-size:.75rem}.skill-node[data-astro-cid-ab4ihpzs]{padding:.5rem .75rem;font-size:.4rem;min-width:85px}.connector-line[data-astro-cid-ab4ihpzs]{height:1rem}}@media(max-width:900px){.skill-tree[data-astro-cid-ab4ihpzs]{gap:1rem;max-width:100%;padding:1.5rem .5rem}.tech-column[data-astro-cid-ab4ihpzs]{max-width:180px;min-width:0}.column-header[data-astro-cid-ab4ihpzs]{padding:.5rem .875rem;box-shadow:3px 3px 0 0 var(--border-color)}.tree-branches[data-astro-cid-ab4ihpzs]{max-width:100%}.category-title[data-astro-cid-ab4ihpzs]{font-size:.45rem}.category-icon[data-astro-cid-ab4ihpzs]{font-size:.625rem}.skill-node[data-astro-cid-ab4ihpzs]{padding:.4rem .6rem;font-size:.375rem;min-width:70px}.connector-line[data-astro-cid-ab4ihpzs]{height:.75rem}}@media(max-width:600px){.skills[data-astro-cid-ab4ihpzs]{padding:3rem 1rem}.skill-tree[data-astro-cid-ab4ihpzs]{flex-direction:column;gap:1.5rem;max-width:100%}.tech-column[data-astro-cid-ab4ihpzs]{flex:1 1 100%;max-width:100%}.column-header[data-astro-cid-ab4ihpzs]{margin-bottom:.75rem;padding:.625rem 1.25rem}.category-title[data-astro-cid-ab4ihpzs]{font-size:.5rem}.category-icon[data-astro-cid-ab4ihpzs]{font-size:.75rem}.skill-chain[data-astro-cid-ab4ihpzs]{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:.5rem}.connector-line[data-astro-cid-ab4ihpzs]{display:none}.skill-node[data-astro-cid-ab4ihpzs]{padding:.5rem .875rem;min-width:auto;font-size:.45rem}.hobby-note[data-astro-cid-ab4ihpzs]{flex-direction:column;text-align:center}}.skill-tree[data-astro-cid-ab4ihpzs]{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.skill-tree[data-astro-cid-ab4ihpzs].animate-in{opacity:1;transform:translateY(0)}.skill-tree[data-astro-cid-ab4ihpzs].animate-in .tech-column[data-astro-cid-ab4ihpzs]{animation:column-appear .5s ease-out forwards;animation-delay:var(--col-delay);opacity:0;transform:translateY(20px)}@keyframes column-appear{to{opacity:1;transform:translateY(0)}}.skill-tree[data-astro-cid-ab4ihpzs].animate-in .skill-node[data-astro-cid-ab4ihpzs]{animation:node-pop .3s ease-out forwards;animation-delay:calc(var(--col-delay) + .15s + var(--node-delay));opacity:0;transform:scale(.8)}@keyframes node-pop{to{opacity:1;transform:scale(1)}}.skill-tree[data-astro-cid-ab4ihpzs].animate-in .connector-line[data-astro-cid-ab4ihpzs]{animation:line-grow .2s ease-out forwards;animation-delay:calc(var(--col-delay) + .15s + var(--line-delay));opacity:0;transform:scaleY(0)}@keyframes line-grow{to{opacity:1;transform:scaleY(1)}}@media(prefers-reduced-motion:reduce){.skill-tree[data-astro-cid-ab4ihpzs],.tech-column[data-astro-cid-ab4ihpzs],.connector-line[data-astro-cid-ab4ihpzs],.tree-branches[data-astro-cid-ab4ihpzs]{animation:none!important;opacity:1!important;transform:none!important;transition:none!important}.skill-node[data-astro-cid-ab4ihpzs],.column-header[data-astro-cid-ab4ihpzs]{animation:none!important;opacity:1!important;transition:none!important}}.projects[data-astro-cid-amng4zvp]{padding:6rem 1rem;background-color:var(--bg-secondary);position:relative}.projects[data-astro-cid-amng4zvp]:before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--border-color) 1px,transparent 1px),linear-gradient(90deg,var(--border-color) 1px,transparent 1px);background-size:40px 40px;opacity:.05;pointer-events:none}[data-theme=dark] .projects[data-astro-cid-amng4zvp]:before{opacity:.12}.section-header[data-astro-cid-amng4zvp]{max-width:1200px;margin:0 auto 4rem;text-align:center;position:relative;z-index:1}.section-tag[data-astro-cid-amng4zvp]{font-family:var(--font-pixel);font-size:.5rem;color:var(--accent-secondary);letter-spacing:2px}.section-title[data-astro-cid-amng4zvp]{font-family:var(--font-pixel);font-size:clamp(1rem,3vw,1.5rem);color:var(--text-primary);margin:1rem 0;display:flex;align-items:center;justify-content:center;gap:.75rem}.title-decorator[data-astro-cid-amng4zvp]{color:var(--accent-primary)}.section-subtitle[data-astro-cid-amng4zvp]{font-family:var(--font-display);font-size:1rem;color:var(--text-secondary)}.partnership-vignette[data-astro-cid-amng4zvp]{max-width:900px;margin:0 auto 3rem;padding:1.5rem;background-color:var(--bg-card);border:3px solid var(--border-color);box-shadow:5px 5px 0 0 var(--accent-highlight);display:flex;gap:1.5rem;align-items:flex-start;position:relative;z-index:1}.vignette-icon[data-astro-cid-amng4zvp]{width:48px;height:48px;padding:2px;background-color:var(--accent-highlight);border:2px solid var(--border-color);flex-shrink:0}.vignette-icon[data-astro-cid-amng4zvp] svg{width:100%;height:100%;color:var(--color-ink)}.vignette-content[data-astro-cid-amng4zvp]{flex:1}.vignette-title[data-astro-cid-amng4zvp]{font-family:var(--font-pixel);font-size:.625rem;color:var(--text-primary);text-transform:uppercase;letter-spacing:1px;margin:0 0 .75rem}.vignette-text[data-astro-cid-amng4zvp]{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0 0 1rem}.vignette-text[data-astro-cid-amng4zvp] strong[data-astro-cid-amng4zvp]{color:var(--text-primary)}.vignette-link[data-astro-cid-amng4zvp]{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-pixel);font-size:.5rem;color:var(--text-primary);text-decoration:none;padding:.5rem .75rem;border:2px solid var(--border-color);transition:all .2s ease}.vignette-link[data-astro-cid-amng4zvp]:hover{background-color:var(--accent-highlight);transform:translate(-2px,-2px);box-shadow:2px 2px 0 0 var(--border-color)}.vignette-link[data-astro-cid-amng4zvp] svg[data-astro-cid-amng4zvp]{width:14px;height:14px}.projects-grid[data-astro-cid-amng4zvp]{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;position:relative;z-index:1}.project-card[data-astro-cid-amng4zvp]{background-color:var(--bg-card);border:3px solid var(--border-color);box-shadow:6px 6px 0 0 var(--accent-primary);position:relative;overflow:hidden;transition:all .2s ease}.project-card[data-astro-cid-amng4zvp]:hover{transform:translate(-3px,-3px);box-shadow:9px 9px 0 0 var(--accent-primary)}.project-number[data-astro-cid-amng4zvp]{position:absolute;top:0;right:0;background-color:var(--accent-secondary);padding:.5rem .75rem;display:flex;flex-direction:column;align-items:center;border-left:2px solid var(--border-color);border-bottom:2px solid var(--border-color)}.number-label[data-astro-cid-amng4zvp]{font-family:var(--font-pixel);font-size:.375rem;color:#fff;letter-spacing:1px}.number-value[data-astro-cid-amng4zvp]{font-family:var(--font-pixel);font-size:.75rem;color:#fff;font-weight:700}.project-content[data-astro-cid-amng4zvp]{padding:1.5rem}.project-subtitle[data-astro-cid-amng4zvp]{font-family:var(--font-pixel);font-size:.5rem;color:var(--accent-primary);text-transform:uppercase;letter-spacing:2px}.project-title[data-astro-cid-amng4zvp]{font-family:var(--font-display);font-size:1.5rem;color:var(--text-primary);font-weight:700;margin:.5rem 0 1rem}.project-description[data-astro-cid-amng4zvp]{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin-bottom:1.5rem}.project-tech[data-astro-cid-amng4zvp]{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.tech-tag[data-astro-cid-amng4zvp]{font-family:var(--font-pixel);font-size:.375rem;padding:.375rem .625rem;background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);text-transform:uppercase;letter-spacing:1px}.project-links[data-astro-cid-amng4zvp]{display:flex;gap:1rem}.project-link[data-astro-cid-amng4zvp]{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-pixel);font-size:.5rem;color:var(--text-primary);text-decoration:none;padding:.5rem .75rem;border:2px solid var(--border-color);transition:all .2s ease}.project-link[data-astro-cid-amng4zvp]:hover{background-color:var(--accent-primary);color:#fff;transform:translate(-2px,-2px);box-shadow:2px 2px 0 0 var(--border-color)}.link-icon[data-astro-cid-amng4zvp]{width:14px;height:14px}.card-corner[data-astro-cid-amng4zvp]{position:absolute;bottom:0;left:0;width:20px;height:20px;border-top:2px solid var(--accent-primary);border-right:2px solid var(--accent-primary)}.section-footer[data-astro-cid-amng4zvp]{text-align:center;margin-top:4rem;position:relative;z-index:1}@media(max-width:768px){.projects[data-astro-cid-amng4zvp]{padding:4rem 1rem}.partnership-vignette[data-astro-cid-amng4zvp]{flex-direction:column;gap:1rem;box-shadow:4px 4px 0 0 var(--accent-highlight)}.vignette-icon[data-astro-cid-amng4zvp]{width:40px;height:40px;padding:8px}.projects-grid[data-astro-cid-amng4zvp]{grid-template-columns:1fr}.project-card[data-astro-cid-amng4zvp]{box-shadow:4px 4px 0 0 var(--accent-primary)}.project-card[data-astro-cid-amng4zvp]:hover{transform:none;box-shadow:4px 4px 0 0 var(--accent-primary)}}.contact[data-astro-cid-xmivup5a]{padding:6rem 1rem;background-color:var(--bg-primary);position:relative}.contact[data-astro-cid-xmivup5a]:before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--border-color) 1px,transparent 1px),linear-gradient(90deg,var(--border-color) 1px,transparent 1px);background-size:40px 40px;opacity:.05;pointer-events:none}[data-theme=dark] .contact[data-astro-cid-xmivup5a]:before{opacity:.12}.section-header[data-astro-cid-xmivup5a]{max-width:1200px;margin:0 auto 4rem;text-align:center;position:relative;z-index:1}.section-tag[data-astro-cid-xmivup5a]{font-family:var(--font-pixel);font-size:.5rem;color:var(--accent-secondary);letter-spacing:2px}.section-title[data-astro-cid-xmivup5a]{font-family:var(--font-pixel);font-size:clamp(1rem,3vw,1.5rem);color:var(--text-primary);margin:1rem 0;display:flex;align-items:center;justify-content:center;gap:.75rem}.title-decorator[data-astro-cid-xmivup5a]{color:var(--accent-primary)}.section-subtitle[data-astro-cid-xmivup5a]{font-family:var(--font-display);font-size:1rem;color:var(--text-secondary)}.contact-container[data-astro-cid-xmivup5a]{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:1fr 1.5fr;gap:3rem;position:relative;z-index:1}.contact-info[data-astro-cid-xmivup5a]{display:flex;flex-direction:column;gap:1.5rem}.info-card[data-astro-cid-xmivup5a]{display:flex;align-items:center;gap:1rem;padding:1rem;background-color:var(--bg-secondary);border:2px solid var(--border-color);transition:all .2s ease}.info-card[data-astro-cid-xmivup5a]:hover{transform:translate(-2px,-2px);box-shadow:2px 2px 0 0 var(--border-color)}.info-icon[data-astro-cid-xmivup5a]{width:40px;height:40px;padding:4px;display:flex;align-items:center;justify-content:center;background-color:var(--accent-primary);border:2px solid var(--border-color);flex-shrink:0;color:var(--color-ink)}.info-icon[data-astro-cid-xmivup5a] svg{width:100%;height:100%}.info-content[data-astro-cid-xmivup5a]{display:flex;flex-direction:column;gap:.25rem}.info-label[data-astro-cid-xmivup5a]{font-family:var(--font-pixel);font-size:.375rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.info-value[data-astro-cid-xmivup5a]{font-family:var(--font-display);font-size:.9rem;color:var(--text-primary);text-decoration:none}a[data-astro-cid-xmivup5a].info-value:hover{color:var(--accent-primary)}.social-section[data-astro-cid-xmivup5a]{margin-top:1rem;padding-top:1.5rem;border-top:2px dashed var(--border-color)}.social-label[data-astro-cid-xmivup5a]{font-family:var(--font-pixel);font-size:.5rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;display:block;margin-bottom:1rem}.social-links[data-astro-cid-xmivup5a]{display:flex;gap:1rem}.social-link[data-astro-cid-xmivup5a]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background-color:transparent;border:2px solid var(--border-color);color:var(--text-primary);text-decoration:none;font-family:var(--font-pixel);font-size:.5rem;text-transform:uppercase;transition:all .2s ease}.social-link[data-astro-cid-xmivup5a]:hover{background-color:var(--accent-primary);border-color:var(--border-color);color:#fff;transform:translate(-2px,-2px);box-shadow:2px 2px 0 0 var(--border-color)}.social-link[data-astro-cid-xmivup5a] svg[data-astro-cid-xmivup5a]{width:16px;height:16px}.contact-form-wrapper[data-astro-cid-xmivup5a]{background-color:var(--bg-secondary);border:3px solid var(--border-color);box-shadow:6px 6px 0 0 var(--accent-primary)}.contact-form[data-astro-cid-xmivup5a]{padding:2rem}.form-header[data-astro-cid-xmivup5a]{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px dashed var(--border-color)}.form-icon[data-astro-cid-xmivup5a]{width:40px;height:40px;padding:4px;display:flex;align-items:center;justify-content:center;background-color:var(--accent-primary);border:2px solid var(--border-color);flex-shrink:0;color:var(--color-ink)}.form-icon[data-astro-cid-xmivup5a] svg{width:100%;height:100%}.form-title[data-astro-cid-xmivup5a]{font-family:var(--font-pixel);font-size:.625rem;color:var(--accent-primary);text-transform:uppercase;letter-spacing:2px}.form-group[data-astro-cid-xmivup5a]{margin-bottom:1.5rem}.form-label[data-astro-cid-xmivup5a]{display:flex;align-items:center;gap:.25rem;margin-bottom:.5rem}.label-text[data-astro-cid-xmivup5a]{font-family:var(--font-pixel);font-size:.5rem;color:var(--text-primary);text-transform:uppercase;letter-spacing:1px}.label-required[data-astro-cid-xmivup5a]{color:var(--accent-secondary)}.form-input[data-astro-cid-xmivup5a]{width:100%;padding:.875rem 1rem;background-color:var(--bg-primary);border:2px solid var(--border-color);color:var(--text-primary);font-family:var(--font-display);font-size:.9rem;transition:all .2s ease}.form-input[data-astro-cid-xmivup5a]::placeholder{color:var(--text-secondary)}.form-input[data-astro-cid-xmivup5a]:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #3498db33}.form-textarea[data-astro-cid-xmivup5a]{resize:vertical;min-height:120px}.form-submit[data-astro-cid-xmivup5a]{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem 1.5rem;background-color:var(--accent-primary);color:#fff;border:3px solid var(--border-color);box-shadow:4px 4px 0 0 var(--border-color);font-family:var(--font-pixel);font-size:.5rem;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .1s ease}.form-submit[data-astro-cid-xmivup5a]:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 0 var(--border-color);background-color:var(--accent-secondary)}.form-submit[data-astro-cid-xmivup5a]:active{transform:translate(4px,4px);box-shadow:none}.submit-icon[data-astro-cid-xmivup5a]{font-size:.625rem}.form-status[data-astro-cid-xmivup5a]{margin-top:1rem;padding:.75rem;font-family:var(--font-pixel);font-size:.5rem;text-align:center;display:none}.form-status[data-astro-cid-xmivup5a].success{display:block;background-color:#3498db26;border:1px solid var(--accent-primary);color:var(--accent-primary)}.form-status[data-astro-cid-xmivup5a].error{display:block;background-color:#e67e2226;border:1px solid var(--accent-secondary);color:var(--accent-secondary)}.section-footer[data-astro-cid-xmivup5a]{text-align:center;margin-top:4rem;position:relative;z-index:1}@media(max-width:768px){.contact[data-astro-cid-xmivup5a]{padding:4rem 1rem}.contact-container[data-astro-cid-xmivup5a]{grid-template-columns:1fr;gap:2rem}.contact-form-wrapper[data-astro-cid-xmivup5a]{box-shadow:4px 4px 0 0 var(--accent-primary)}.social-links[data-astro-cid-xmivup5a]{flex-direction:column}.social-link[data-astro-cid-xmivup5a]{justify-content:center}}html{font-size:calc(15px + .390625vw)}nav[data-astro-cid-sckkx6r4] a[data-astro-cid-sckkx6r4]{display:block}
