.skdi-gallery { display:none; }
@media (min-width:768px) and (hover:hover) and (pointer:fine) {
  img[data-skdi-full] { cursor:zoom-in; }
  .skdi-gallery { position:fixed; inset:0; z-index:100000; display:none; grid-template-columns:4rem minmax(0,1fr) 4rem; grid-template-rows:1fr; align-items:center; background:rgba(0,0,0,.92); color:#fff; }
  .skdi-gallery.is-open { display:grid; }
  .skdi-gallery__prev { grid-column:1; grid-row:1; }
  .skdi-gallery__stage { grid-column:2; grid-row:1; align-self:stretch; display:flex; min-width:0; min-height:0; padding:3.5rem 0 2.5rem; overflow:auto; flex-direction:column; align-items:center; justify-content:center; }
  .skdi-gallery:not(.is-zoomed) .skdi-gallery__stage { overflow:hidden; }
  .skdi-gallery__next { grid-column:3; grid-row:1; }
  .skdi-gallery__stage img { display:block; max-width:calc(100vw - 10rem); max-height:calc(100vh - 10rem); width:auto; height:auto; object-fit:contain; cursor:default; }
  .skdi-gallery.is-zoomed .skdi-gallery__stage { display:block; text-align:center; }
  .skdi-gallery.is-zoomed .skdi-gallery__stage img { max-width:none; max-height:none; margin:auto; cursor:zoom-out; }
  .skdi-gallery button { position:relative; z-index:1; border:1px solid rgba(255,255,255,.65); border-radius:.25rem; background:rgba(0,0,0,.55); color:#fff; font:700 1.8rem/1 sans-serif; cursor:pointer; }
  .skdi-gallery button:focus-visible { outline:3px solid #fff; outline-offset:3px; }
  .skdi-gallery__close { position:absolute!important; top:1rem; right:1rem; width:3rem; height:3rem; }
  .skdi-gallery__prev,.skdi-gallery__next { width:3rem; height:4rem; justify-self:center; }
  .skdi-gallery__zoom { position:absolute!important; right:1rem; bottom:1rem; width:3rem; height:3rem; }
  .skdi-gallery__caption { max-width:60rem; margin:.8rem 1rem 0; text-align:center; font:400 1rem/1.4 sans-serif; }
}
