/* Full-size lightbox for the seven shop-gallery photographs. */
.store-photo{position:relative;display:block;min-width:0;overflow:hidden;margin:0;aspect-ratio:4/3;border:1px solid #d8e8ef;border-radius:10px;background:#eef5f8}
.store-photo-open{position:absolute;inset:0;display:block;width:100%;height:100%;overflow:hidden;padding:0;border:0;background:transparent;cursor:zoom-in}
.store-photo-open img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;background:#e8f0f4;transition:transform .35s ease,filter .35s ease}
.store-photo-open:hover img,.store-photo-open:focus-visible img{transform:scale(1.055);filter:saturate(1.08)}
.store-photo-open:focus-visible{outline:3px solid #2da6d1;outline-offset:-3px}
.store-photo figcaption{position:absolute;z-index:2;right:7px;bottom:7px;left:7px;overflow:hidden;padding:5px 8px;border-radius:6px;background:rgba(9,43,67,.76);color:#fff;font-size:10px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}
.store-photo-dialog{position:relative;width:min(1120px,calc(100% - 16px));max-width:1120px;max-height:94vh;padding:0;overflow:hidden;border:1px solid rgba(221,239,247,.72);border-radius:18px;background:#0b1d29;color:#fff;box-shadow:0 28px 100px rgba(0,0,0,.52)}
.store-photo-dialog::backdrop{background:rgba(3,15,24,.86);backdrop-filter:blur(7px)}
.store-photo-dialog-inner{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;max-height:94vh;min-height:55vh;padding:20px 74px 46px}
.store-photo-large{display:block;max-width:100%;width:100%;height:min(76vh,780px);object-fit:contain;border-radius:9px;background:#07141d}
.store-photo-caption-large{max-width:92%;color:rgba(255,255,255,.9);font-size:13px;line-height:1.45;text-align:center}
.store-photo-counter{position:absolute;bottom:14px;left:0;right:0;color:rgba(255,255,255,.65);font-size:12px;text-align:center}
.store-photo-dialog-close{position:absolute;z-index:4;top:12px;right:14px;display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:rgba(5,23,34,.72);color:#fff;font-size:24px;cursor:pointer;backdrop-filter:blur(6px);transition:background .2s ease,transform .2s ease}
.store-photo-dialog-close:hover{background:rgba(255,255,255,.18);transform:rotate(90deg)}
.store-photo-dialog-arrow{position:absolute;z-index:3;top:50%;display:grid;place-items:center;width:45px;height:54px;transform:translateY(-50%);border:1px solid rgba(255,255,255,.24);border-radius:12px;background:rgba(5,23,34,.68);color:#fff;font-size:30px;line-height:1;cursor:pointer;transition:background .2s ease,transform .2s ease}
.store-photo-dialog-arrow:hover{transform:translateY(-50%) scale(1.06);background:rgba(255,255,255,.18)}
.store-photo-dialog-prev{left:12px}.store-photo-dialog-next{right:12px}
@media(max-width:600px){.store-photo-dialog{width:calc(100% - 10px);max-height:96vh;border-radius:13px}.store-photo-dialog-inner{min-height:67vh;max-height:96vh;padding:55px 43px 48px}.store-photo-large{height:70vh}.store-photo-dialog-close{top:8px;right:8px;width:36px;height:36px}.store-photo-dialog-arrow{width:34px;height:44px;font-size:24px}.store-photo-dialog-prev{left:4px}.store-photo-dialog-next{right:4px}}
@media(prefers-reduced-motion:reduce){.store-photo-open img,.store-photo-dialog-close,.store-photo-dialog-arrow{transition:none!important}}
