/* Galerie de photographies : composant autonome, sans style sur les sections. */
.photo-lightbox {
  position: fixed;
  inset: 0;
  box-sizing: border-box;
  width: 100%; height: 100%; height: 100dvh;
  max-width: none; max-height: none;
  margin: 0; padding: 0; border: 0;
  background: transparent; color: #F0E8DA;
  overscroll-behavior: contain;
}
.photo-lightbox::backdrop { background: rgb(15 30 46 / 90%); }
.photo-lightbox-stage { display: grid; place-items: center; width: 100%; height: 100%; }
.photo-lightbox-image {
  display: block; width: auto; height: auto;
  max-width: calc(100% - 112px); max-height: calc(100dvh - 96px);
  object-fit: contain; user-select: none;
  touch-action: pan-y pinch-zoom;
}
.photo-lightbox-control {
  position: absolute; display: grid; place-items: center;
  width: 44px; height: 44px; padding: 11px;
  background: rgb(15 30 46 / 22%); border: 0;
  border-radius: 2px; color: inherit; cursor: pointer;
}
.photo-lightbox-control svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1; stroke-linecap: round; stroke-linejoin: round; }
.photo-lightbox-control:focus-visible { outline: 1px solid #F0E8DA; outline-offset: 2px; }
.photo-lightbox-close { top: max(12px, env(safe-area-inset-top)); right: max(12px, env(safe-area-inset-right)); }
.photo-lightbox-previous { left: 8px; top: calc(50% - 22px); }
.photo-lightbox-next { right: 8px; top: calc(50% - 22px); }
.photo-lightbox-counter { position: absolute; bottom: max(10px, env(safe-area-inset-bottom)); left: 0; right: 0; text-align: center; margin: 0; font: 300 20px/1.2 "bebas-neue-pro", sans-serif; }
@media (max-width: 767px) {
  .photo-lightbox-image { max-width: calc(100% - 88px); max-height: calc(100dvh - 112px); }
  .photo-lightbox-previous { left: 0; }
  .photo-lightbox-next { right: 0; }
}

.photo-lightbox-control[hidden] { display: none; }

/* Aucun cadre sur le conteneur ou le média, même lorsque Safari y place le focus.
   Le focus clavier reste indiqué sur chacun des boutons de commande. */
.photo-lightbox, .photo-lightbox-stage, .photo-lightbox-image,
.photo-lightbox:focus, .photo-lightbox:focus-visible,
.photo-lightbox-stage:focus, .photo-lightbox-image:focus {
  border: 0; outline: none; box-shadow: none;
}
.photo-lightbox-control { box-shadow: none; -webkit-tap-highlight-color: transparent; }
.photo-lightbox-control:focus:not(:focus-visible) { outline: none; }
.photo-lightbox-control:focus-visible { outline: 1px solid #F0E8DA; outline-offset: 2px; }

/* Safari mobile : supprimer uniquement le reflet/focus d'un lien activé au toucher
   après fermeture de la galerie. Le focus clavier garde son contour accessible. */
@media (hover: none) and (pointer: coarse) {
  .news-preview, .news-photo-link, .actress-photo-link { -webkit-tap-highlight-color: transparent; }
  .news-section a.gallery-pointer-activation:focus-visible,
  .actress-photo-link.gallery-pointer-activation:focus-visible { outline: none; box-shadow: none; }
}
