/* LuxBMI in-page photo viewer: projects, featured proof, and founder portrait. */
.lux-photo-lightbox[hidden] { display: none !important; }
.lux-photo-lightbox {
  position: fixed;
  inset: 0;
  z-index: 11050;
  display: grid;
  place-items: center;
  box-sizing: border-box;
  padding: max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right))
           max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));
}
.lux-photo-lightbox__shade {
  position: absolute;
  inset: 0;
  background: rgba(0,5,20,.88);
  -webkit-backdrop-filter: blur(9px);
  backdrop-filter: blur(9px);
}
.lux-photo-lightbox__panel {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: min(98%, 1200px);
  max-height: calc(100dvh - 32px);
  min-height: 80px;
  padding: 50px 18px 16px;
  border: 2px solid rgba(224,185,107,.86);
  border-radius: 15px;
  background: linear-gradient(145deg,#0c1741,#050e25);
  box-shadow: 0 22px 80px rgba(0,0,0,.72), 0 0 35px rgba(212,161,71,.14);
  color: #f7eece;
}
.lux-photo-lightbox__image {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: calc(100dvh - 150px);
  object-fit: contain;
  border-radius: 5px;
}
.lux-photo-lightbox__caption {
  margin: 12px 0 0;
  max-width: 95%;
  text-align: center;
  font: 600 .82rem/1.4 "Rajdhani","Segoe UI",sans-serif;
  color: #dce9f8;
}
.lux-photo-lightbox__close {
  position: absolute;
  top: 9px;
  right: 9px;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  padding: 0;
  border: 1px solid rgba(236,193,107,.72);
  border-radius: 9px;
  background: #172751;
  color: #ffe2a1;
  cursor: pointer;
  font: 800 1.8rem/1 "Segoe UI",sans-serif;
}
.lux-photo-lightbox__close:hover, .lux-photo-lightbox__close:focus-visible {
  background: #263f73;
  outline: 2px solid #ffe5a6;
  outline-offset: 2px;
}
a[data-lux-image-open] { cursor: zoom-in; }
.lux-founder-profile__photo-link { display: block; }
body.lux-photo-lightbox-open { overflow: hidden !important; }
@media (max-width: 520px) {
  .lux-photo-lightbox__panel { padding: 50px 10px 12px; max-height: calc(100dvh - 30px); }
  .lux-photo-lightbox__image { max-height: calc(100dvh - 145px); }
  .lux-photo-lightbox__caption { font-size: .72rem; }
}
@media (forced-colors: active) {
  .lux-photo-lightbox__panel { border: 2px solid CanvasText; background: Canvas; color: CanvasText; }
  .lux-photo-lightbox__close { border-color: ButtonText; color: ButtonText; background: ButtonFace; }
}

/* Preserve the founder portrait's original fixed photo area and mobile cropping. */
body.lux-about-page .lux-founder-profile__portrait > .lux-founder-profile__photo-link {
  display: block;
  flex: 0 0 auto;
  width: 100%;
  height: 550px;
  min-height: 0;
  max-height: none;
}
body.lux-about-page .lux-founder-profile__portrait > .lux-founder-profile__photo-link > img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  max-height: none;
  object-fit: cover;
  object-position: center 43%;
  border-radius: 0;
}
@media (max-width: 850px) {
  body.lux-about-page .lux-founder-profile__portrait > .lux-founder-profile__photo-link {
    height: clamp(390px,125vw,530px);
  }
}
