/* Lightbox per le foto delle pagine */
.fmc-zoom { cursor: zoom-in; }
.fmc-lb {
  position: fixed;
  inset: 0;
  z-index: 10001;
  display: none;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, .92);
  touch-action: pan-y;
}
.fmc-lb.is-open { display: flex; animation: fmc-lb-in .2s ease; }
.fmc-lb__fig { margin: 0; max-width: 100%; max-height: 100%; padding: 56px 12px 48px; text-align: center; }
.fmc-lb .fmc-lb__img {
  display: block;
  margin: 0 auto;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: calc(100vh - 104px);
  max-height: calc(100dvh - 104px);
  box-shadow: 0 10px 40px rgba(0, 0, 0, .5);
}
.fmc-lb .fmc-lb__cap { margin-top: 10px; color: #fff; font-size: 14px; line-height: 1.4; }
.fmc-lb .fmc-lb__btn {
  position: absolute;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, .15);
  color: #fff;
  font: 400 28px/44px Arial, sans-serif;
  text-align: center;
  cursor: pointer;
}
.fmc-lb .fmc-lb__btn:hover,
.fmc-lb .fmc-lb__btn:focus-visible { background: #db1a1a; }
.fmc-lb .fmc-lb__close { top: 8px; right: 8px; }
.fmc-lb .fmc-lb__prev,
.fmc-lb .fmc-lb__next { top: 50%; margin-top: -22px; }
.fmc-lb .fmc-lb__prev { left: 8px; }
.fmc-lb .fmc-lb__next { right: 8px; }
.fmc-lb .fmc-lb__count { position: absolute; top: 20px; left: 16px; color: #fff; font-size: 14px; }
@media (max-width: 767px) {
  .fmc-lb .fmc-lb__prev,
  .fmc-lb .fmc-lb__next { top: auto; bottom: 8px; margin-top: 0; }
  .fmc-lb .fmc-lb__prev { left: calc(50% - 56px); }
  .fmc-lb .fmc-lb__next { right: calc(50% - 56px); }
  .fmc-lb__fig { padding: 56px 8px 64px; }
  .fmc-lb .fmc-lb__img { max-height: calc(100dvh - 120px); }
}
body.fmc-lb-open { overflow: hidden; }
@keyframes fmc-lb-in { from { opacity: 0; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .fmc-lb.is-open { animation: none; } }
