/* Pizza Service homepage gallery v1.3.0 */
.gallery-section{position:relative;background:linear-gradient(180deg,#111 0%,#151515 100%)}
.gallery-heading{align-items:flex-end}
.gallery-lead{max-width:720px;margin:.55rem 0 0;color:#aaa;line-height:1.7}
.gallery-filters{display:flex;gap:.55rem;overflow-x:auto;padding:.25rem 0 1rem;margin-bottom:1rem;scrollbar-width:none}
.gallery-filters::-webkit-scrollbar{display:none}
.gallery-filter{flex:0 0 auto;border:1px solid #333;background:#1b1b1b;color:#ddd;border-radius:999px;padding:.65rem 1rem;font:inherit;font-weight:700;cursor:pointer;transition:.18s ease}
.gallery-filter:hover,.gallery-filter.active{background:#ffc72c;color:#111;border-color:#ffc72c}
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.gallery-item{min-width:0;border:1px solid #2d2d2d;background:#191919;border-radius:20px;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.14)}
.gallery-item[hidden]{display:none!important}
.gallery-photo{position:relative;display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:4/3;padding:0;border:0;background:#0b0b0b;overflow:hidden;cursor:zoom-in}
.gallery-photo img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#0b0b0b;transition:transform .2s ease}
.gallery-photo:hover img{transform:scale(1.015)}
.gallery-zoom{position:absolute;right:.75rem;bottom:.75rem;width:2.1rem;height:2.1rem;display:grid;place-items:center;border-radius:50%;background:rgba(0,0,0,.7);color:#fff;font-size:1.35rem;border:1px solid rgba(255,255,255,.2)}
.gallery-info{padding:1rem 1rem 1.15rem}
.gallery-type{display:inline-flex;align-items:center;border-radius:999px;padding:.3rem .65rem;font-size:.78rem;font-weight:800;margin-bottom:.65rem;background:#252525;color:#eee}
.gallery-type-celebrities{background:#31270a;color:#ffd454}
.gallery-type-customers{background:#30171a;color:#ffabb2}
.gallery-type-events{background:#182a32;color:#9bddff}
.gallery-info h3{margin:0;color:#fff;font-size:1.05rem;line-height:1.45}
.gallery-info p{margin:.4rem 0 0;color:#aaa;line-height:1.55;font-size:.92rem}
.gallery-info time{display:block;margin-top:.6rem;color:#777;font-size:.78rem}
.gallery-lightbox{width:min(1100px,94vw);max-width:1100px;padding:0;border:0;border-radius:22px;background:#111;color:#fff;box-shadow:0 30px 100px rgba(0,0,0,.7)}
.gallery-lightbox::backdrop{background:rgba(0,0,0,.88);backdrop-filter:blur(5px)}
.gallery-lightbox-inner{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,.8fr);min-height:320px}
.gallery-lightbox img{display:block;width:100%;height:min(78vh,760px);object-fit:contain;background:#050505}
.gallery-lightbox-copy{padding:1.25rem;align-self:end}
.gallery-lightbox-copy h3{margin:0;font-size:1.3rem}
.gallery-lightbox-copy p{margin:.55rem 0 0;color:#bbb;line-height:1.65}
.gallery-lightbox-close{position:absolute;z-index:3;top:.75rem;right:.75rem;width:2.7rem;height:2.7rem;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:rgba(0,0,0,.72);color:#fff;font-size:1.8rem;line-height:1;cursor:pointer}
@media(max-width:900px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-lightbox-inner{grid-template-columns:1fr}.gallery-lightbox-copy{padding:1rem}.gallery-lightbox img{height:min(70vh,680px)}}
@media(max-width:560px){.gallery-grid{grid-template-columns:1fr;gap:.85rem}.gallery-item{border-radius:16px}.gallery-photo{aspect-ratio:4/3}.gallery-lightbox{width:96vw;border-radius:16px}.gallery-lightbox img{height:68vh}}
