.project-card{position:relative;display:block;overflow:hidden;background:var(--color-surface);isolation:isolate;border-radius:14px}.project-card__index{position:absolute;top:1rem;left:1rem;z-index:3;mix-blend-mode:difference}.project-card__category,.project-card__index{font-size:var(--text-xs);letter-spacing:var(--tracking-wider);color:var(--color-gold)}.project-card__category{text-transform:uppercase;margin-bottom:.45rem;transform:translateY(10px);transition:transform var(--duration) var(--ease-out)}.project-card__media{width:100%;height:100%;min-height:280px}.project-card--portrait .project-card__media{aspect-ratio:3/4}.project-card--landscape .project-card__media{aspect-ratio:16/10}.project-card--square .project-card__media{aspect-ratio:1/1}.project-card__media img{width:100%;height:100%;object-fit:cover;transition:transform var(--duration-slow) var(--ease-out),filter var(--duration-slow) var(--ease-out)}.project-card__overlay{position:absolute;inset:0;display:flex;align-items:flex-end;padding:var(--space-5);background:linear-gradient(0deg,rgba(15,15,15,.85) 0,rgba(15,15,15,.2) 45%,transparent 70%);opacity:0;transition:opacity var(--duration) var(--ease-out)}.project-card__meta h3{font-size:var(--text-lg);margin-bottom:.35rem;transform:translateY(10px);transition:transform var(--duration) var(--ease-out)}.project-card__meta p{font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-beige-muted);transform:translateY(10px);transition:transform var(--duration) var(--ease-out) 40ms}.project-card:focus-visible .project-card__media img,.project-card:hover .project-card__media img{transform:scale(1.05);filter:brightness(.85)}.project-card:focus-visible .project-card__overlay,.project-card:hover .project-card__overlay{opacity:1}.project-card:focus-visible .project-card__category,.project-card:focus-visible .project-card__meta h3,.project-card:focus-visible .project-card__meta p,.project-card:hover .project-card__category,.project-card:hover .project-card__meta h3,.project-card:hover .project-card__meta p{transform:translateY(0)}@media (hover:none){.project-card__overlay{opacity:1}.project-card__meta h3,.project-card__meta p{transform:none}}.projects-page__content{padding-top:clamp(2.5rem,5vw,4rem)}.projects-page__filters{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-5);margin-bottom:var(--space-8);padding-bottom:var(--space-5);border-bottom:1px solid var(--color-border)}.projects-page__filter{font-size:var(--text-xs);font-weight:500;letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-beige-dim);padding:.4rem 0;border-bottom:1px solid transparent;transition:color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.projects-page__filter.is-active,.projects-page__filter:hover{color:var(--color-gold);border-bottom-color:var(--color-gold)}.projects-page__grid{display:grid;grid-gap:var(--space-8) var(--space-5);gap:var(--space-8) var(--space-5);grid-template-columns:1fr}.projects-page__item .project-card{border-radius:14px;border:1px solid var(--color-border)}.projects-page__detail{margin-top:var(--space-4)}.projects-page__category{font-size:var(--text-xs);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-gold);margin-bottom:var(--space-2)}.projects-page__detail p:last-child{color:var(--color-beige-muted);font-size:var(--text-sm);max-width:48ch;line-height:1.6}@media (min-width:700px){.projects-page__grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1100px){.projects-page__grid{grid-template-columns:repeat(3,1fr)}}