.pg-wrap{width:100%;position:relative}
.pg-grid{display:grid;gap:var(--pg-gap,20px);grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:350px}.pg-item{position:relative;overflow:hidden;border-radius:var(--pg-radius,20px);background:#eee;min-width:0;min-height:0}
.pg-item .pg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;margin:0;border-radius:0;transition:transform .5s ease}
.pg-item:hover .pg-img{transform:scale(1.04)}
.pg-has-lb .pg-item{cursor:zoom-in}
.pg-has-lb .pg-item:focus-visible{outline:3px solid #2271b1;outline-offset:2px}
.pg-lb-open{overflow:hidden}
.pg-lb{position:fixed;inset:0;z-index:999999;background:rgba(0,0,0,.9);display:flex;align-items:center;justify-content:center}
.pg-lb-stage{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:56px 72px;box-sizing:border-box}
.pg-lb-img{max-width:100%;max-height:100%;object-fit:contain;border-radius:var(--pg-radius,12px);box-shadow:0 10px 40px rgba(0,0,0,.5);transition:opacity .2s}
.pg-lb-loading .pg-lb-img{opacity:.25}
.pg-lb button{position:absolute;border:0;background:rgba(255,255,255,.14);color:#fff;cursor:pointer;border-radius:50%;width:44px;height:44px;font-size:28px;line-height:1;padding:0;transition:background .2s}
.pg-lb button:hover{background:rgba(255,255,255,.3)}
.pg-lb-close{top:14px;right:14px}
.pg-lb-prev{left:14px;top:50%;transform:translateY(-50%)}
.pg-lb-next{right:14px;top:50%;transform:translateY(-50%)}
.pg-lb-count{position:absolute;bottom:16px;left:0;right:0;text-align:center;color:#fff;font-size:14px;opacity:.8}
@media (max-width:767px){.pg-lb-stage{padding:56px 12px}.pg-lb-prev,.pg-lb-next{top:auto;bottom:10px;transform:none}.pg-lb-count{bottom:24px}}
.pg-more{text-align:center;margin-top:var(--pg-gap,20px)}
.pg-btn{display:inline-block;padding:12px 32px;border:0;border-radius:var(--pg-radius,20px);background:#1d2327;color:#fff;font-size:16px;cursor:pointer;transition:opacity .2s}
.pg-btn:hover{opacity:.85}
.pg-btn[disabled]{opacity:.5;cursor:default}
.pg-sentinel{height:1px}
.pg-spinner{display:none;width:32px;height:32px;margin:20px auto 0;border:3px solid #ddd;border-top-color:#1d2327;border-radius:50%;animation:pg-spin .8s linear infinite}
.pg-wrap.pg-loading .pg-spinner{display:block}
@keyframes pg-spin{to{transform:rotate(360deg)}}
