/* BELLEO — Visionneuse publique des réalisations V1 */
.g-tile.is-photo{display:block;width:100%;padding:0;border:1px solid var(--border);font:inherit;cursor:zoom-in}
.g-tile.is-photo::after,.work-open::after{content:"Agrandir";position:absolute;right:8px;bottom:8px;display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;background:rgba(20,14,10,.65);color:#fff;font-size:8px;font-weight:800;letter-spacing:.2px;opacity:0;transform:translateY(3px);transition:.16s;backdrop-filter:blur(6px)}
.g-tile.is-photo:hover::after,.g-tile.is-photo:focus-visible::after,.work-open:hover::after,.work-open:focus-visible::after{opacity:1;transform:none}
.work-card{display:block}
.work-open{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:none;font:inherit;cursor:zoom-in;text-align:left}
.work-open img{display:block;width:100%;height:100%;object-fit:cover}
.photo-viewer[hidden]{display:none}
.photo-viewer{position:fixed;inset:0;z-index:300;display:grid;grid-template-columns:minmax(44px,72px) minmax(0,1fr) minmax(44px,72px);grid-template-rows:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:max(14px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:rgba(15,10,7,.92);backdrop-filter:blur(14px)}
.photo-viewer-close{grid-column:3;justify-self:end;display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.24);border-radius:13px;background:rgba(255,255,255,.11);color:#fff;font-size:26px;line-height:1;cursor:pointer}
.photo-viewer-media{grid-column:2;grid-row:2;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;height:100%}
.photo-viewer-image{display:block;max-width:100%;max-height:calc(100vh - 150px);object-fit:contain;border-radius:13px;box-shadow:0 18px 60px rgba(0,0,0,.42)}
.photo-viewer-nav{grid-row:2;display:grid;place-items:center;width:46px;height:58px;justify-self:center;border:1px solid rgba(255,255,255,.22);border-radius:15px;background:rgba(255,255,255,.1);color:#fff;font-size:27px;cursor:pointer}
.photo-viewer-prev{grid-column:1}.photo-viewer-next{grid-column:3}
.photo-viewer-nav[hidden]{display:none}
.photo-viewer-footer{grid-column:1/-1;grid-row:3;display:flex;align-items:flex-start;justify-content:center;gap:14px;color:#fff;text-align:center}
.photo-viewer-caption{max-width:720px;font-size:12px;line-height:1.5}
.photo-viewer-count{flex:0 0 auto;color:rgba(255,255,255,.7);font-size:10px;font-weight:700}
@media(max-width:620px){
  .photo-viewer{grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;padding-left:7px;padding-right:7px}
  .photo-viewer-close{width:38px;height:38px}
  .photo-viewer-nav{width:38px;height:50px;border-radius:12px;font-size:23px}
  .photo-viewer-image{max-height:calc(100vh - 138px);border-radius:10px}
  .photo-viewer-footer{align-items:center;flex-direction:column;gap:5px}
}
@media(prefers-reduced-motion:reduce){.g-tile.is-photo::after,.work-open::after{transition:none}}
