.portfolio-hero{border-bottom:1px solid #ede6d814;padding:14rem 8vw 4rem}.portfolio-hero-inner{justify-content:space-between;align-items:flex-end;gap:4rem;max-width:1600px;margin:0 auto;display:flex}.portfolio-hero-text{flex-shrink:0}.portfolio-hero-meta{font-family:var(--font-mono);letter-spacing:.3em;text-transform:uppercase;color:var(--amber);margin-bottom:1rem;font-size:11px}.portfolio-hero-headline{font-family:var(--font-serif);letter-spacing:-.04em;color:var(--paper);margin:0;font-size:clamp(48px,7vw,100px);font-weight:300;line-height:.95}.portfolio-hero-headline em{color:var(--amber);font-style:italic}.portfolio-tabs{flex-wrap:nowrap;align-items:center;gap:1.6rem;margin:0;padding:0;list-style:none;display:flex}.portfolio-tab{font-family:var(--font-mono);letter-spacing:.25em;text-transform:uppercase;color:#ede6d873;cursor:pointer;transition:color .35s var(--ease-cinematic);background:0 0;border:none;padding:.4rem 0;font-size:11px;position:relative}.portfolio-tab:after{content:"";background:var(--amber);width:0;height:1px;transition:width .4s var(--ease-cinematic);position:absolute;bottom:0;left:0}.portfolio-tab:hover,.portfolio-tab:focus-visible{color:var(--paper);outline:none}.portfolio-tab.is-active{color:var(--amber)}.portfolio-tab.is-active:after{width:100%}.portfolio-grid-wrap{padding:5rem 8vw 4rem}.portfolio-grid{grid-template-columns:repeat(3,1fr);gap:1.4rem;max-width:1600px;margin:0 auto;display:grid}.portfolio-card{aspect-ratio:4/5;cursor:pointer;transition:opacity .4s var(--ease-cinematic);background:#1a1a1a;position:relative;overflow:hidden}.portfolio-card-img{filter:grayscale(.5)brightness(.7);transition:filter .7s var(--ease-cinematic), transform 1.2s var(--ease-cinematic);will-change:transform;background-position:50%;background-size:cover;position:absolute;inset:0}.portfolio-card:hover .portfolio-card-img,.portfolio-card:focus-visible .portfolio-card-img{filter:grayscale(0)brightness();transform:scale(1.03)}.portfolio-card-label{opacity:0;transition:opacity .5s var(--ease-cinematic), transform .5s var(--ease-cinematic);z-index:2;background:linear-gradient(#0000,#0a0a0aeb 40%);padding:1.6rem 1.4rem 1.2rem;position:absolute;bottom:0;left:0;right:0;transform:translateY(16px)}.portfolio-card:hover .portfolio-card-label,.portfolio-card:focus-visible .portfolio-card-label{opacity:1;transform:translateY(0)}.portfolio-card-cat{font-family:var(--font-mono);letter-spacing:.3em;text-transform:uppercase;color:var(--amber);margin-bottom:.4rem;font-size:9px;display:block}.portfolio-card-title{font-family:var(--font-serif);letter-spacing:-.01em;color:var(--paper);margin-bottom:.3rem;font-size:20px;font-weight:300;line-height:1.2}.portfolio-card-sub{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:#ede6d88c;font-size:9px}.portfolio-card.is-hidden{display:none}.portfolio-meta{border-top:1px solid #ede6d814;justify-content:space-between;align-items:center;gap:2rem;max-width:1600px;margin:4rem auto 12rem;padding:1.5rem 0 0;display:flex}.portfolio-count{font-family:var(--font-mono);letter-spacing:.25em;text-transform:uppercase;color:#ede6d88c;font-size:11px}.portfolio-count strong{color:var(--paper);font-weight:500}.portfolio-load-more{border:none;border-bottom:1px solid var(--amber);font-family:var(--font-mono);letter-spacing:.3em;text-transform:uppercase;color:var(--amber);cursor:pointer;transition:opacity .3s var(--ease-cinematic);background:0 0;padding:.75rem 0;font-size:11px}.portfolio-load-more:hover,.portfolio-load-more:focus-visible{opacity:.7;outline:none}.portfolio-load-more.is-hidden{display:none}@media (prefers-reduced-motion:reduce){.portfolio-card,.portfolio-card-img,.portfolio-card-label,.portfolio-tab,.portfolio-tab:after,.portfolio-load-more{transition:none!important}}@media (width<=800px){.portfolio-hero{padding:10rem 6vw 3rem}.portfolio-hero-inner{flex-direction:column;align-items:stretch;gap:2rem}.portfolio-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-bottom:.5rem;overflow-x:auto}.portfolio-tab{flex-shrink:0}.portfolio-grid-wrap{padding:3rem 6vw 2rem}.portfolio-grid{grid-template-columns:1fr 1fr;gap:1rem}.portfolio-card-label{opacity:1;transform:translateY(0)}.portfolio-meta{flex-direction:column;align-items:flex-start;gap:1.5rem;margin:3rem auto 6rem;padding-left:6vw;padding-right:6vw}}@media (width<=480px){.portfolio-grid{grid-template-columns:1fr}}
