.work-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 26px}
.work-card{min-width:0;scroll-margin-top:140px}
.work-cover{position:relative;display:block;aspect-ratio:1;background:#eae3df;border-radius:10px;overflow:hidden;color:#fff;text-decoration:none}
.work-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.work-cover:hover img{transform:scale(1.025)}
.work-cover:focus-visible,.work-close:focus-visible{outline:3px solid #865e50;outline-offset:5px}
.work-play{position:absolute;inset:0;margin:auto;width:58px;height:58px;display:grid;place-items:center;padding-left:3px;border:1px solid #ffffffa6;border-radius:50%;background:#30282485;backdrop-filter:blur(4px);font-size:20px;color:white;pointer-events:none}
.work-format{position:absolute;left:14px;bottom:14px;background:#302824ad;color:#fff;padding:5px 10px;border-radius:20px;font-size:12px;letter-spacing:.03em}
.work-card .work-title{font-family:inherit;font-size:16px;font-weight:500;line-height:1.6;margin:16px 2px 0;color:#493b38}
.work-placeholder{display:grid;place-items:center;color:#786965}
.work-gallery>.empty-state{grid-column:1/-1}
.work-viewer{width:min(800px,calc(100vw - 28px));max-width:800px;max-height:calc(100dvh - 28px);padding:18px;border:0;border-radius:12px;background:#faf7f4;color:#493b38;margin:auto;overflow:auto;box-sizing:border-box}
.work-viewer::backdrop{background:#17100ed9}
.work-viewer-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}
.work-viewer-heading h2{font-family:inherit;font-size:17px;line-height:1.5;font-weight:500;margin:0}
.work-close{border:0;background:transparent;color:inherit;cursor:pointer;font-size:30px;line-height:1;width:44px;height:44px;flex-shrink:0}
.work-viewer video{display:block;width:100%;max-height:calc(100dvh - 140px);background:#111;border-radius:5px;object-fit:contain}
.work-viewer [hidden]{display:none}
.work-viewer p{margin:12px 0 0;font-size:14px}
.px-gallery-tile{position:relative}
.px-gallery-tile .work-play{width:44px;height:44px;font-size:15px}
@media(max-width:767px){.work-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}.work-card .work-title{font-size:13px;margin-top:12px}.work-play{width:45px;height:45px;font-size:16px}.work-format{left:9px;bottom:9px;font-size:10px;padding:4px 8px}.work-viewer{padding:12px}.work-viewer-heading h2{font-size:15px}}
@media(prefers-reduced-motion:reduce){.work-cover img{transition:none}.work-cover:hover img{transform:none}}
