.hero[data-astro-cid-anhloy43]{margin-top:100px;min-height:35vh;display:flex;align-items:center;justify-content:center;padding:var(--space-md) var(--space-lg);position:relative}.hero-inner[data-astro-cid-anhloy43]{max-width:900px;margin:0 auto;width:100%}.hero-content[data-astro-cid-anhloy43]{display:flex;flex-direction:column;gap:var(--space-md)}.hero-title[data-astro-cid-anhloy43]{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.5rem);font-weight:500;line-height:1;letter-spacing:-.04em;color:var(--text-main);margin:0 0 var(--space-xs) 0}.hero-role[data-astro-cid-anhloy43]{font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.5;color:var(--text-muted);margin:0;font-weight:400}.hero-status[data-astro-cid-anhloy43]{display:flex;align-items:center;gap:var(--space-xs);font-size:.85rem;color:var(--text-muted);font-weight:400}.status-divider[data-astro-cid-anhloy43]{color:var(--text-ghost);user-select:none}.hero-cta[data-astro-cid-anhloy43]{margin-top:var(--space-xs)}.hero-link[data-astro-cid-anhloy43]{display:inline-flex;align-items:center;gap:.4rem;font-size:.875rem;text-decoration:none;color:var(--text-muted);transition:color .2s ease}.hero-link[data-astro-cid-anhloy43]:hover{color:var(--text-main)}.link-arrow[data-astro-cid-anhloy43]{transition:transform .2s ease}.hero-link[data-astro-cid-anhloy43]:hover .link-arrow[data-astro-cid-anhloy43]{transform:translate(4px)}@media(max-width:768px){.hero[data-astro-cid-anhloy43]{padding:var(--space-sm) var(--space-md);margin-top:80px;min-height:28vh}.hero-title[data-astro-cid-anhloy43]{font-size:clamp(1.8rem,7vw,2.5rem)}.status-divider[data-astro-cid-anhloy43]{display:none}}@media(prefers-reduced-motion:reduce){.hero-title[data-astro-cid-anhloy43],.hero-role[data-astro-cid-anhloy43],.hero-status[data-astro-cid-anhloy43],.hero-cta[data-astro-cid-anhloy43]{opacity:1!important;transform:none!important}}#projects[data-astro-cid-44zkpkd5]{padding:var(--space-md) var(--space-lg) var(--space-xl);max-width:1200px;margin:0 auto}.section-header[data-astro-cid-44zkpkd5]{margin-bottom:2.5rem}.projects-grid[data-astro-cid-44zkpkd5]{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(1rem,2vw,1.75rem)}.project-card[data-astro-cid-44zkpkd5].featured{grid-column:1 / -1}.project-card[data-astro-cid-44zkpkd5]{display:block;text-decoration:none;color:inherit;cursor:pointer;transition:opacity .5s ease,transform .5s ease}.project-card[data-astro-cid-44zkpkd5].visible{opacity:1!important;transform:translateY(0)!important}.project-card[data-astro-cid-44zkpkd5]:focus{outline:none}.project-card[data-astro-cid-44zkpkd5]:focus-visible{outline:2px solid var(--text-main);outline-offset:6px;border-radius:var(--radius-md)}.card-image[data-astro-cid-44zkpkd5]{position:relative;overflow:hidden;border-radius:var(--radius-md);background:var(--bg-secondary);aspect-ratio:16 / 7}.project-card[data-astro-cid-44zkpkd5]:not(.featured) .card-image[data-astro-cid-44zkpkd5]{aspect-ratio:4 / 3}.card-image[data-astro-cid-44zkpkd5] img[data-astro-cid-44zkpkd5]{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.25,.46,.45,.94)}.project-card[data-astro-cid-44zkpkd5]:hover .card-image[data-astro-cid-44zkpkd5] img[data-astro-cid-44zkpkd5]{transform:scale(1.04)}.card-info[data-astro-cid-44zkpkd5]{display:flex;flex-direction:column;gap:.3rem;padding:.75rem 0 0}.card-header[data-astro-cid-44zkpkd5]{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.card-title[data-astro-cid-44zkpkd5]{margin:0;font-family:var(--font-display);font-size:clamp(1rem,1.6vw,1.2rem);font-weight:400;letter-spacing:-.01em;transition:color .25s ease}.project-card[data-astro-cid-44zkpkd5].featured .card-title[data-astro-cid-44zkpkd5]{font-size:clamp(1.1rem,2vw,1.45rem)}.project-card[data-astro-cid-44zkpkd5]:hover .card-title[data-astro-cid-44zkpkd5]{color:var(--text-muted)}.card-meta[data-astro-cid-44zkpkd5]{font-size:.72rem;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.card-desc[data-astro-cid-44zkpkd5]{margin:0;font-size:.8rem;color:var(--text-muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:52ch}@media(max-width:720px){#projects[data-astro-cid-44zkpkd5]{padding:var(--space-lg) var(--space-md)}.projects-grid[data-astro-cid-44zkpkd5]{grid-template-columns:1fr;gap:clamp(1.25rem,4vw,2rem)}.project-card[data-astro-cid-44zkpkd5].featured{grid-column:auto}.card-image[data-astro-cid-44zkpkd5],.project-card[data-astro-cid-44zkpkd5]:not(.featured) .card-image[data-astro-cid-44zkpkd5]{aspect-ratio:4 / 3}}@media(max-width:480px){#projects[data-astro-cid-44zkpkd5]{padding:var(--space-md) var(--space-sm)}.card-desc[data-astro-cid-44zkpkd5]{display:none}}@media(prefers-reduced-motion:reduce){.project-card[data-astro-cid-44zkpkd5],.card-image[data-astro-cid-44zkpkd5] img[data-astro-cid-44zkpkd5]{transition:none}}.about[data-astro-cid-zsov6f23]{padding:var(--space-md) var(--space-lg) var(--space-xl);max-width:1400px;margin:0 auto}.about-inner[data-astro-cid-zsov6f23]{max-width:1100px;margin:0 auto}.section-header[data-astro-cid-zsov6f23]{margin-bottom:2rem}.about-content[data-astro-cid-zsov6f23]{display:grid;grid-template-columns:360px 1fr;gap:var(--space-lg);align-items:stretch}.about-photo[data-astro-cid-zsov6f23]{position:relative;overflow:hidden;border-radius:var(--radius-md);background:var(--bg-secondary);min-height:480px}.about-photo[data-astro-cid-zsov6f23] img[data-astro-cid-zsov6f23]{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;filter:grayscale(15%);transition:filter .6s ease,transform .6s var(--ease-smooth)}.about-photo[data-astro-cid-zsov6f23]:hover img[data-astro-cid-zsov6f23]{filter:grayscale(0%);transform:scale(1.02)}.about-right[data-astro-cid-zsov6f23]{display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-lg)}.about-main[data-astro-cid-zsov6f23]{display:flex;flex-direction:column;gap:var(--space-md)}.about-lead[data-astro-cid-zsov6f23]{font-family:var(--font-display);font-size:clamp(1.35rem,3vw,1.75rem);line-height:1.45;letter-spacing:-.01em;font-weight:400;color:var(--text-main);margin:0}.about-text[data-astro-cid-zsov6f23]{font-size:1rem;line-height:1.75;color:var(--text-muted);margin:0;font-weight:400}.about-skills[data-astro-cid-zsov6f23]{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--text-ghost)}.skill-category[data-astro-cid-zsov6f23] h3[data-astro-cid-zsov6f23]{font-size:.7rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:0 0 var(--space-sm) 0}.skill-list[data-astro-cid-zsov6f23]{display:flex;flex-direction:column;gap:.4rem}.skill-item[data-astro-cid-zsov6f23]{font-size:.9rem;color:var(--text-main);transition:color .2s var(--ease-smooth)}.skill-item[data-astro-cid-zsov6f23]:hover{color:var(--text-muted)}@media(max-width:900px){.about-content[data-astro-cid-zsov6f23]{grid-template-columns:1fr}.about-photo[data-astro-cid-zsov6f23]{min-height:340px;max-height:440px}}@media(max-width:768px){.about[data-astro-cid-zsov6f23]{padding:var(--space-lg) var(--space-md)}.about-skills[data-astro-cid-zsov6f23]{grid-template-columns:1fr 1fr}}@media(max-width:640px){.about[data-astro-cid-zsov6f23]{padding:var(--space-md) var(--space-sm)}.about-lead[data-astro-cid-zsov6f23]{font-size:1.2rem}.about-skills[data-astro-cid-zsov6f23]{grid-template-columns:1fr;gap:var(--space-md)}}@media(prefers-reduced-motion:reduce){.skill-item[data-astro-cid-zsov6f23]{transition:none}}#contact[data-astro-cid-zbjjch6a]{padding:var(--space-xl) var(--space-lg);max-width:1400px;margin:0 auto}.contact-wrapper[data-astro-cid-zbjjch6a]{max-width:900px;margin:0 auto}.section-header[data-astro-cid-zbjjch6a]{margin-bottom:3.5rem}.contact-content[data-astro-cid-zbjjch6a]{display:flex;flex-direction:column;gap:var(--space-md)}.contact-lead[data-astro-cid-zbjjch6a]{font-family:var(--font-display);font-size:clamp(1.6rem,4vw,2.2rem);line-height:1.25;letter-spacing:-.02em;font-weight:400;color:var(--text-main);margin:0}.contact-availability[data-astro-cid-zbjjch6a]{display:flex;justify-content:flex-start}.availability-indicator[data-astro-cid-zbjjch6a]{display:inline-flex;align-items:center;gap:.6rem;font-size:.8rem;letter-spacing:.02em;color:var(--text-muted)}.status-dot[data-astro-cid-zbjjch6a]{display:block;width:6px;height:6px;background:var(--text-main);border-radius:50%;will-change:transform,opacity;flex-shrink:0}.contact-actions[data-astro-cid-zbjjch6a]{display:flex;flex-direction:column;gap:var(--space-md);margin-top:var(--space-lg)}.contact-button[data-astro-cid-zbjjch6a]{display:inline-flex;align-items:center;gap:.5rem;padding:.8rem 1.5rem;background:var(--text-main);color:var(--bg);font-size:.875rem;font-weight:500;letter-spacing:.01em;text-decoration:none;border-radius:var(--radius-md);transition:opacity .2s var(--ease-smooth);width:fit-content}.contact-button[data-astro-cid-zbjjch6a]:hover{color:var(--bg);opacity:.8}.button-arrow[data-astro-cid-zbjjch6a]{transition:transform .2s ease}.contact-button[data-astro-cid-zbjjch6a]:hover .button-arrow[data-astro-cid-zbjjch6a]{transform:translate(3px)}.contact-links[data-astro-cid-zbjjch6a]{display:flex;gap:var(--space-md);flex-wrap:wrap}.contact-link[data-astro-cid-zbjjch6a]{display:inline-flex;align-items:center;gap:.3rem;font-size:.875rem;color:var(--text-muted);text-decoration:none;transition:color .2s var(--ease-smooth)}.contact-link[data-astro-cid-zbjjch6a]:hover{color:var(--text-main)}.link-arrow[data-astro-cid-zbjjch6a]{font-size:.75em;opacity:.6}@media(max-width:768px){#contact[data-astro-cid-zbjjch6a]{padding:var(--space-lg) var(--space-md)}}@media(max-width:640px){#contact[data-astro-cid-zbjjch6a]{padding:var(--space-md) var(--space-sm)}.contact-lead[data-astro-cid-zbjjch6a]{font-size:1.4rem}.contact-links[data-astro-cid-zbjjch6a]{gap:var(--space-sm)}}@media(prefers-reduced-motion:reduce){.status-dot[data-astro-cid-zbjjch6a]{animation:none}}.footer[data-astro-cid-sz7xmlte]{padding:var(--space-lg) var(--space-lg);border-top:1px solid var(--text-ghost)}.footer-inner[data-astro-cid-sz7xmlte]{max-width:1200px;margin:0 auto;font-size:.75rem;color:var(--text-muted);text-align:center}
