.portfolio-page{gap:2rem;display:grid}.portfolio-intro{max-width:52rem}.portfolio-intro p{margin:.75rem 0 0;line-height:1.7}.portfolio-status{color:var(--mb-text-muted);letter-spacing:.04em;margin:0;font-size:.85rem}.portfolio-filters{flex-wrap:wrap;gap:.65rem;display:flex}.portfolio-filter{border:1px solid var(--mb-border);color:var(--mb-text-muted);font-family:var(--mb-font-body);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:999px;padding:.55rem 1rem;font-size:.72rem;font-weight:600;transition:border-color .2s,color .2s,background-color .2s}.portfolio-filter:hover,.portfolio-filter:focus-visible{border-color:var(--mb-gold);color:var(--mb-text);outline:none}.portfolio-filter.is-active{background:var(--mb-gold);border-color:var(--mb-gold);color:#080605}.portfolio-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;display:grid}.portfolio-grid--masonry{column-count:3;column-gap:1rem;display:block}.portfolio-grid--masonry .portfolio-card{break-inside:avoid;-webkit-column-break-inside:avoid;width:100%;margin-bottom:1rem;display:inline-block}.portfolio-grid--masonry .portfolio-card.is-filtered-out,.portfolio-grid--masonry .portfolio-card[hidden]{display:none!important}.portfolio-grid--masonry .portfolio-card__media{aspect-ratio:auto}.portfolio-grid--masonry .portfolio-card__media img{width:100%;height:auto}.portfolio-card{border:1px solid var(--mb-border);background:var(--mb-bg-card);cursor:pointer;border-radius:4px;transition:transform .2s,border-color .2s;position:relative;overflow:hidden}.portfolio-card__trigger{z-index:2;cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.portfolio-card__media,.portfolio-card__meta{pointer-events:none}.portfolio-card:hover,.portfolio-card:has(.portfolio-card__trigger:focus-visible){border-color:var(--mb-gold);outline:none;transform:translateY(-2px)}.portfolio-card__trigger:focus-visible{outline:2px solid var(--mb-gold);outline-offset:-2px}.portfolio-card__media{aspect-ratio:4/5;position:relative;overflow:hidden}.portfolio-card__media img{object-fit:cover;width:100%;height:100%;transition:transform .35s;display:block}.portfolio-card:hover .portfolio-card__media img,.portfolio-card:has(.portfolio-card__trigger:focus-visible) .portfolio-card__media img{transform:scale(1.04)}.portfolio-card__overlay{color:var(--mb-text);letter-spacing:.12em;text-transform:uppercase;opacity:0;background:#08060573;justify-content:center;align-items:center;font-size:.72rem;font-weight:600;transition:opacity .2s;display:flex;position:absolute;inset:0}.portfolio-card:hover .portfolio-card__overlay,.portfolio-card:has(.portfolio-card__trigger:focus-visible) .portfolio-card__overlay{opacity:1}.portfolio-card__meta{padding:.85rem .95rem 1rem}.portfolio-card__category{letter-spacing:.1em;text-transform:uppercase;color:var(--mb-gold);margin-bottom:.35rem;font-size:.68rem;display:block}.portfolio-card__title{letter-spacing:.06em;padding:0;font-size:.95rem}.portfolio-empty{border:1px dashed var(--mb-border);text-align:left;border-radius:4px;justify-items:start;gap:1rem;padding:2rem;display:grid}.portfolio-empty[hidden]{display:none}.portfolio-lightbox{z-index:1200;background:#080605eb;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.portfolio-lightbox[hidden]{display:none}.portfolio-lightbox__dialog{grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem;width:min(960px,100%);max-height:calc(100vh - 2rem);display:grid;position:relative}.portfolio-lightbox__figure{gap:1rem;max-height:calc(100vh - 2rem);margin:0;display:grid;overflow:auto}.portfolio-lightbox__figure img{object-fit:contain;border:1px solid var(--mb-border);background:#000;border-radius:4px;width:100%;max-height:min(70vh,720px)}.portfolio-lightbox__caption{text-align:center;justify-items:center;gap:.75rem;display:grid}.portfolio-lightbox__category{letter-spacing:.12em;text-transform:uppercase;color:var(--mb-gold);margin:0;font-size:.72rem}.portfolio-lightbox__title{padding:0;font-size:1.25rem}.portfolio-lightbox__close,.portfolio-lightbox__nav{border:1px solid var(--mb-border);color:var(--mb-text);cursor:pointer;background:#080605d9;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:border-color .2s,color .2s;display:inline-flex}.portfolio-lightbox__close{z-index:2;position:absolute;top:-.5rem;right:-.5rem}.portfolio-lightbox__close:hover,.portfolio-lightbox__close:focus-visible,.portfolio-lightbox__nav:hover,.portfolio-lightbox__nav:focus-visible{border-color:var(--mb-gold);color:var(--mb-gold);outline:none}body.portfolio-lightbox-open{overflow:hidden}@media (width<=768px){.portfolio-filters{border:1px solid var(--mb-border);background:var(--mb-bg-card);border-radius:4px;flex-flow:column;gap:0;overflow:hidden}.portfolio-filter{border:none;border-bottom:1px solid var(--mb-border);text-align:left;letter-spacing:.06em;border-radius:0;justify-content:space-between;align-items:center;width:100%;padding:.9rem 1rem;font-size:.76rem;display:flex}.portfolio-filter:last-child{border-bottom:none}.portfolio-filter.is-active{border-color:var(--mb-border);color:var(--mb-gold);box-shadow:inset 3px 0 0 var(--mb-gold);background:#c5a0591a;padding-left:calc(1rem - 3px)}.portfolio-filter.is-active:after{content:"✓";color:var(--mb-gold);font-size:.85rem;line-height:1}.portfolio-lightbox__dialog{grid-template-columns:1fr}.portfolio-lightbox__nav{display:none}.portfolio-lightbox__close{top:.25rem;right:.25rem}.portfolio-grid--masonry{column-count:2}}@media (width<=480px){.portfolio-filter{padding:.85rem .9rem;font-size:.72rem}.portfolio-grid--masonry{column-count:1}}
