/* ===== Сетка миниатюр (адаптивная) ===== */
.seom-photo-gallery{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(200px,1fr));
  gap:10px;
  margin:1rem 0;
}
.seom-photo-gallery a{display:block;overflow:hidden;border-radius:8px}
.seom-photo-gallery img{
  width:100%;height:180px;object-fit:cover;display:block;
  cursor:zoom-in;transition:transform .25s ease;
}
.seom-photo-gallery a:hover img{transform:scale(1.05)}
@media (max-width:1024px){
  .seom-photo-gallery{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}
  .seom-photo-gallery img{height:150px}
}
@media (max-width:600px){
  .seom-photo-gallery{grid-template-columns:repeat(2,1fr);gap:6px}
  .seom-photo-gallery img{height:120px}
}
@media (max-width:360px){ .seom-photo-gallery img{height:100px} }

/* ===== Лайтбокс ===== */
html.seom-lb-open{overflow:hidden}
.seom-lb{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:2147483600;display:none;align-items:center;justify-content:center}
.seom-lb.is-open{display:flex}
.seom-lb__fig{margin:0;display:flex;flex-direction:column;align-items:center;max-width:94vw;max-height:92vh}
.seom-lb__img{max-width:94vw;max-height:84vh;object-fit:contain;border-radius:4px;box-shadow:0 6px 40px rgba(0,0,0,.55)}
.seom-lb__cap{color:#eee;font:14px/1.45 system-ui,Arial,sans-serif;margin-top:12px;text-align:center;max-width:80vw}
.seom-lb__count{position:absolute;top:18px;left:20px;color:#ccc;font:13px system-ui,Arial,sans-serif}
.seom-lb__btn{position:absolute;background:rgba(0,0,0,.35);color:#fff;border:0;cursor:pointer;
  font-size:26px;line-height:1;width:48px;height:48px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;transition:background .2s;user-select:none}
.seom-lb__btn:hover{background:rgba(255,255,255,.22)}
.seom-lb__close{top:14px;right:14px}
.seom-lb__prev{left:14px;top:50%;transform:translateY(-50%)}
.seom-lb__next{right:14px;top:50%;transform:translateY(-50%)}
@media (max-width:600px){
  .seom-lb__btn{width:40px;height:40px;font-size:22px}
  .seom-lb__close{top:10px;right:10px}.seom-lb__prev{left:8px}.seom-lb__next{right:8px}
}
