#three-bg[data-astro-cid-sobiw43t]{position:fixed;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;display:block}.hero[data-astro-cid-j7pv25f6]{position:relative;isolation:isolate;background:#0a0a0a;color:#fff;padding-block:var(--space-10);min-height:calc(100vh - var(--nav-height));display:flex;align-items:center;overflow:hidden}.hero__inner[data-astro-cid-j7pv25f6]{position:relative;z-index:1}.hero__layout[data-astro-cid-j7pv25f6]{display:grid;grid-template-columns:1fr auto;gap:var(--space-9);align-items:center}.hero__bio[data-astro-cid-j7pv25f6]{font-size:var(--text-base);line-height:1.75;color:#ffffffa6;max-width:var(--measure)}.hero__links[data-astro-cid-j7pv25f6]{color:#ffffff8c}.hero__photo-wrap[data-astro-cid-j7pv25f6]{flex-shrink:0}.hero__photo-frame[data-astro-cid-j7pv25f6]{line-height:0}.hero__photo[data-astro-cid-j7pv25f6]{display:block;width:270px;height:auto;object-fit:cover}.hero[data-astro-cid-j7pv25f6] .btn--primary,.hero[data-astro-cid-j7pv25f6] .btn--secondary{background:transparent;border-color:#ffffff4d;color:#ffffffd9}.hero[data-astro-cid-j7pv25f6] .btn--primary:hover,.hero[data-astro-cid-j7pv25f6] .btn--secondary:hover{border-color:#ffffffbf;background:#ffffff12;color:#fff}.skills-grid[data-astro-cid-j7pv25f6]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-7)}.highlights-grid[data-astro-cid-j7pv25f6]{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-5)}.highlight-card__body[data-astro-cid-j7pv25f6]{position:relative;padding:var(--space-6) var(--space-5);display:flex;flex-direction:column;gap:var(--space-3);flex:1;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:22px 22px;background-position:-1px -1px}.highlight-card__icon[data-astro-cid-j7pv25f6]{width:28px;height:28px;margin-bottom:var(--space-2);color:var(--color-ink);transition:color var(--dur-base) var(--ease-out)}.highlight-card__icon[data-astro-cid-j7pv25f6] svg[data-astro-cid-j7pv25f6]{width:100%;height:100%;display:block}.highlight-card__body[data-astro-cid-j7pv25f6] h3[data-astro-cid-j7pv25f6]{font-size:var(--text-xl);font-weight:700;color:var(--color-ink)}.highlight-card__body[data-astro-cid-j7pv25f6] p[data-astro-cid-j7pv25f6]{font-size:var(--text-sm);color:var(--color-ink-muted);line-height:1.65;flex:1}.highlight-card__cta[data-astro-cid-j7pv25f6]{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;color:var(--color-signal);letter-spacing:.04em}.hero__content[data-astro-cid-j7pv25f6]{opacity:0;transform:translateY(18px);transition:opacity .65s var(--ease-out),transform .65s var(--ease-out)}.hero__content[data-astro-cid-j7pv25f6].is-visible{opacity:1;transform:translateY(0)}[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out)}[data-reveal].is-visible{opacity:1;transform:translateY(0)}@media(max-width:860px){.hero__layout[data-astro-cid-j7pv25f6]{grid-template-columns:1fr}.hero__photo-wrap[data-astro-cid-j7pv25f6]{display:none}}@media(max-width:600px){.hero[data-astro-cid-j7pv25f6]{padding-block:var(--space-9);min-height:auto}}.hero .terminal-caption{font-size:var(--text-sm)}a.card.highlight-card{position:relative;border-color:transparent;overflow:hidden;opacity:0;transform:translateY(14px);transition:opacity .55s var(--ease-out),transform .55s var(--ease-out);transition-delay:var(--reveal-delay, 0ms)}a.card.highlight-card.is-visible{opacity:1;transform:translateY(0)}a.card.highlight-card:hover,a.card.highlight-card:focus-visible{transform:translateY(0)!important;box-shadow:none!important}a.card.highlight-card:focus-visible{outline:2px solid var(--color-signal);outline-offset:2px}.highlight-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--color-signal);transform:scaleX(0);transform-origin:left center;transition:transform .35s var(--ease-out);pointer-events:none;z-index:3}.highlight-card:hover:before,.highlight-card:focus-visible:before{transform:scaleX(1)}.highlight-card:hover .highlight-card__icon,.highlight-card:focus-visible .highlight-card__icon{color:var(--color-signal)}
