.gallery-page{padding:3rem 3rem 4rem}.gallery-header{margin-bottom:2rem}.gallery-header h1{color:var(--text);margin-bottom:.25rem;font-size:.95rem;font-weight:500}.gallery-header-sub{color:var(--text-muted);font-size:.75rem;font-weight:300}.gallery-filters{flex-wrap:wrap;align-items:center;gap:2rem;margin-bottom:2.5rem;display:flex}.filter-group{align-items:center;gap:.75rem;display:flex}.filter-group-label{text-transform:uppercase;letter-spacing:.12em;color:var(--text-dim);font-size:.68rem;font-weight:500}.filter-options{gap:.25rem;display:flex}.filter-btn{color:var(--text-muted);transition:all var(--ease);cursor:pointer;background:0 0;border-bottom:1px solid #0000;padding:.2rem .6rem;font-size:.75rem;font-weight:400}.filter-btn:hover{color:var(--text)}.filter-btn.active{color:var(--text);border-color:var(--text-muted)}.artwork-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem;display:grid}.artwork-card{cursor:pointer}.artwork-card-media-wrap{background:var(--bg-card);aspect-ratio:3/4;margin-bottom:.65rem;overflow:hidden}.artwork-card-media{object-fit:cover;opacity:.88;width:100%;height:100%;transition:transform .7s,opacity .3s}.artwork-card:hover .artwork-card-media{opacity:1;transform:scale(1.03)}.artwork-card-title{color:var(--text);white-space:nowrap;text-overflow:ellipsis;margin-bottom:.15rem;font-size:.8rem;font-weight:400;overflow:hidden}.artwork-card-meta{color:var(--text-muted);font-size:.72rem;font-weight:300}.year-heading{text-transform:uppercase;letter-spacing:.12em;color:var(--text-dim);margin-top:3rem;margin-bottom:1.5rem;font-size:.68rem;font-weight:500}.year-heading:first-child{margin-top:0}.gallery-empty{text-align:center;color:var(--text-muted);padding:6rem 2rem;font-size:.85rem}.gallery-loading{justify-content:center;padding:6rem 0;display:flex}@media (max-width:1024px){.artwork-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.gallery-page{padding:2rem 1.5rem 3rem}.artwork-grid{grid-template-columns:repeat(2,1fr);gap:1rem}}@media (max-width:480px){.artwork-grid{grid-template-columns:1fr}}
