.portfolio-page:where(.astro-ajmli3vt){width:min(100%,62rem);margin-inline:auto;padding:2.5rem 0 5rem}.portfolio-header:where(.astro-ajmli3vt){margin-bottom:2.5rem}.eyebrow:where(.astro-ajmli3vt){margin:0 0 .75rem;color:hsl(var(--muted-foreground));font-size:.72rem;font-weight:650;letter-spacing:.16em;text-transform:uppercase}.title-row:where(.astro-ajmli3vt){display:flex;align-items:baseline;justify-content:space-between;gap:1rem;border-bottom:1px solid hsl(var(--border));padding-bottom:1rem}.title-row:where(.astro-ajmli3vt) h1:where(.astro-ajmli3vt){margin:0;font-size:clamp(2.35rem,7vw,4.75rem);font-weight:520;line-height:.95;letter-spacing:-.055em}.title-row:where(.astro-ajmli3vt) span:where(.astro-ajmli3vt){color:hsl(var(--muted-foreground));font-size:.8rem;font-variant-numeric:tabular-nums}.intro:where(.astro-ajmli3vt){max-width:38rem;margin:1.25rem 0 0;color:hsl(var(--muted-foreground));font-size:clamp(1rem,2vw,1.12rem);line-height:1.75}.project-list:where(.astro-ajmli3vt){display:grid;gap:2rem}.project-card:where(.astro-ajmli3vt){overflow:hidden;border:1px solid hsl(var(--border));border-radius:1.25rem;background:hsl(var(--background));box-shadow:0 1px 2px hsl(var(--foreground) / .03)}.project-preview:where(.astro-ajmli3vt){position:relative;display:block;overflow:hidden;aspect-ratio:3 / 2;border-bottom:1px solid hsl(var(--border));background:hsl(var(--muted));color:#fff}.preview-image:where(.astro-ajmli3vt){width:100%;height:100%;object-fit:cover;transition:transform .35s cubic-bezier(.2,.75,.25,1)}.preview-image-dark:where(.astro-ajmli3vt){display:none}html.dark .preview-image-light:where(.astro-ajmli3vt){display:none}html.dark .preview-image-dark:where(.astro-ajmli3vt){display:block}.project-preview:where(.astro-ajmli3vt):after{position:absolute;inset:0;background:linear-gradient(180deg,rgb(0 0 0 / .12),transparent 25%,transparent 72%,rgb(0 0 0 / .24));content:"";pointer-events:none}.project-number:where(.astro-ajmli3vt),.preview-action:where(.astro-ajmli3vt){position:absolute;z-index:1;top:1rem;display:inline-flex;align-items:center;min-height:2rem;border:1px solid rgb(255 255 255 / .24);border-radius:999px;background:#1414168f;box-shadow:0 .25rem 1rem #0000001f;backdrop-filter:blur(.75rem) saturate(140%);-webkit-backdrop-filter:blur(.75rem) saturate(140%);font-size:.75rem;line-height:1}.project-number:where(.astro-ajmli3vt){left:1rem;min-width:2rem;justify-content:center;font-variant-numeric:tabular-nums}.preview-action:where(.astro-ajmli3vt){right:1rem;gap:.25rem;padding:0 .72rem;opacity:0;transform:translateY(.25rem);transition:opacity .18s ease,transform .18s ease}.preview-action:where(.astro-ajmli3vt) svg:where(.astro-ajmli3vt),.open-link:where(.astro-ajmli3vt) svg:where(.astro-ajmli3vt){width:1.05rem;height:1.05rem}.project-preview:where(.astro-ajmli3vt):hover .preview-image:where(.astro-ajmli3vt),.project-preview:where(.astro-ajmli3vt):focus-visible .preview-image:where(.astro-ajmli3vt){transform:scale(1.012)}.project-preview:where(.astro-ajmli3vt):hover .preview-action:where(.astro-ajmli3vt),.project-preview:where(.astro-ajmli3vt):focus-visible .preview-action:where(.astro-ajmli3vt){opacity:1;transform:translateY(0)}.project-preview:where(.astro-ajmli3vt):focus-visible,.open-link:where(.astro-ajmli3vt):focus-visible{outline:2px solid hsl(var(--primary));outline-offset:3px}.project-details:where(.astro-ajmli3vt){display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;padding:clamp(1.25rem,4vw,2rem)}.project-copy:where(.astro-ajmli3vt){min-width:0}.project-copy:where(.astro-ajmli3vt) h2:where(.astro-ajmli3vt){margin:0;font-size:clamp(1.45rem,3vw,2rem);font-weight:560;letter-spacing:-.035em}.project-copy:where(.astro-ajmli3vt) p:where(.astro-ajmli3vt){max-width:39rem;margin:.65rem 0 0;color:hsl(var(--muted-foreground));line-height:1.7}.tag-list:where(.astro-ajmli3vt){display:flex;flex-wrap:wrap;gap:.45rem;margin:1.15rem 0 0;padding:0;list-style:none}.tag-list:where(.astro-ajmli3vt) li:where(.astro-ajmli3vt){border:1px solid hsl(var(--border));border-radius:999px;padding:.35rem .65rem;color:hsl(var(--muted-foreground));font-size:.7rem;line-height:1}.open-link:where(.astro-ajmli3vt){display:inline-flex;flex:none;align-items:center;gap:.4rem;border-radius:999px;background:hsl(var(--foreground));padding:.72rem 1rem;color:hsl(var(--background));font-size:.82rem;font-weight:600;transition:transform .15s ease,opacity .15s ease}.open-link:where(.astro-ajmli3vt):hover{color:hsl(var(--background));opacity:.82;transform:translateY(-1px)}@media(max-width:639px){.portfolio-page:where(.astro-ajmli3vt){padding-top:1.5rem}.portfolio-header:where(.astro-ajmli3vt){margin-bottom:1.75rem}.project-card:where(.astro-ajmli3vt){border-radius:1rem}.project-number:where(.astro-ajmli3vt),.preview-action:where(.astro-ajmli3vt){top:.75rem}.project-number:where(.astro-ajmli3vt){left:.75rem}.preview-action:where(.astro-ajmli3vt){right:.75rem;opacity:1;transform:none}.project-details:where(.astro-ajmli3vt){align-items:stretch;flex-direction:column;gap:1.25rem}.open-link:where(.astro-ajmli3vt){align-self:flex-start}}@media(prefers-reduced-motion:reduce){.preview-image:where(.astro-ajmli3vt),.preview-action:where(.astro-ajmli3vt),.open-link:where(.astro-ajmli3vt){transition:none}}
