.hero[data-astro-cid-lcdefpme]{text-align:center;padding:3em 0 2em}.hero-top[data-astro-cid-lcdefpme]{flex-wrap:wrap;justify-content:center;align-items:center;gap:1.5em;display:flex}.hero-top[data-astro-cid-lcdefpme] h1[data-astro-cid-lcdefpme]{margin:0;line-height:1.2}.portrait[data-astro-cid-lcdefpme]{object-fit:cover;border-radius:4px;width:100px;height:130px}.hero[data-astro-cid-lcdefpme] h1[data-astro-cid-lcdefpme]{margin-bottom:.2em;font-size:2.5em}.name-en[data-astro-cid-lcdefpme]{color:rgb(var(--gray));font-size:.5em;font-weight:400;display:block}.tagline[data-astro-cid-lcdefpme]{color:var(--accent);margin-bottom:.8em;font-size:1.3em}.intro[data-astro-cid-lcdefpme]{max-width:700px;color:rgb(var(--gray-dark));margin:0 auto .3em;line-height:1.8}.contact[data-astro-cid-lcdefpme]{color:rgb(var(--gray));flex-wrap:wrap;justify-content:center;gap:1.5em;font-size:.95em;display:flex}section[data-astro-cid-lcdefpme]{max-width:900px;margin:0 auto 3em}section[data-astro-cid-lcdefpme] h2[data-astro-cid-lcdefpme]{border-bottom:2px solid var(--accent);margin-bottom:1em;padding-bottom:.3em}.edu-item[data-astro-cid-lcdefpme]{margin-bottom:1.5em}.edu-header[data-astro-cid-lcdefpme]{flex-wrap:wrap;justify-content:space-between;align-items:baseline;margin-bottom:.3em;display:flex}.edu-meta[data-astro-cid-lcdefpme]{color:rgb(var(--gray));font-size:.9em}.graduation-photo[data-astro-cid-lcdefpme]{border-radius:6px;width:100%;max-width:400px;margin-top:.8em}.project-item[data-astro-cid-lcdefpme]{margin-bottom:2em}.project-item[data-astro-cid-lcdefpme] h3[data-astro-cid-lcdefpme]{flex-wrap:wrap;justify-content:space-between;align-items:baseline;margin-bottom:.5em;font-size:1.1em;display:flex}.project-date[data-astro-cid-lcdefpme]{color:rgb(var(--gray));font-size:.85em;font-weight:400}.project-item[data-astro-cid-lcdefpme] ul[data-astro-cid-lcdefpme]{margin:0;padding-left:1.2em}.project-item[data-astro-cid-lcdefpme] li[data-astro-cid-lcdefpme]{margin-bottom:.3em;line-height:1.7}.project-desc[data-astro-cid-lcdefpme]{color:rgb(var(--gray-dark));margin-bottom:.5em;line-height:1.7}.video-wrapper[data-astro-cid-lcdefpme]{border-radius:6px;height:0;margin:1em 0;padding-bottom:56.25%;position:relative;overflow:hidden}.video-wrapper[data-astro-cid-lcdefpme] iframe[data-astro-cid-lcdefpme]{border:none;width:100%;height:100%;position:absolute;top:0;left:0}.project-sub[data-astro-cid-lcdefpme]{margin-bottom:1.5em}.project-sub[data-astro-cid-lcdefpme] h4[data-astro-cid-lcdefpme]{margin-bottom:.3em;font-size:1em}.project-sub[data-astro-cid-lcdefpme] p[data-astro-cid-lcdefpme]{color:rgb(var(--gray-dark));margin-bottom:.6em;line-height:1.7}.gallery[data-astro-cid-lcdefpme]{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1em;margin:1em 0;display:grid}.gallery[data-astro-cid-lcdefpme] figure[data-astro-cid-lcdefpme]{border:1px solid rgba(var(--gray), .2);cursor:pointer;background:#fff;border-radius:6px;margin:0;transition:transform .2s,box-shadow .2s;overflow:hidden}.gallery[data-astro-cid-lcdefpme] figure[data-astro-cid-lcdefpme]:hover{transform:scale(1.06);box-shadow:0 8px 28px #0000002e}.gallery[data-astro-cid-lcdefpme] figure[data-astro-cid-lcdefpme] img[data-astro-cid-lcdefpme]{object-fit:cover;aspect-ratio:16/10;width:100%;height:auto;display:block}.gallery[data-astro-cid-lcdefpme] figcaption[data-astro-cid-lcdefpme]{color:rgb(var(--gray));text-align:center;padding:.5em;font-size:.85em}.lightbox[data-astro-cid-lcdefpme]{z-index:9999;background:#000000d9;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.lightbox[data-astro-cid-lcdefpme].active{display:flex}.lightbox[data-astro-cid-lcdefpme] img[data-astro-cid-lcdefpme]{border-radius:4px;max-width:90vw;max-height:90vh;box-shadow:0 8px 32px #0006}.lightbox-close[data-astro-cid-lcdefpme]{color:#fff;cursor:pointer;z-index:10000;font-size:2.5em;line-height:1;position:absolute;top:1em;right:1.5em}.lightbox-close[data-astro-cid-lcdefpme]:hover{color:#ccc}.skills[data-astro-cid-lcdefpme]{flex-wrap:wrap;gap:.5em;display:flex}.skill-tag[data-astro-cid-lcdefpme]{background:rgba(var(--accent), .1);color:var(--accent);border-radius:20px;padding:.3em .8em;font-size:.9em}
