.rep95-clickable{cursor:zoom-in}.rep95-expand{display:inline-block;margin:.5rem 0 1rem;padding:.5rem .85rem;border:1px solid currentColor;border-radius:.5rem;background:transparent;color:inherit;cursor:pointer;font:inherit}.rep95-modal[hidden]{display:none!important}.rep95-modal{position:fixed!important;z-index:2147483000;inset:0;background:rgba(0,0,0,.93);display:flex;justify-content:center;align-items:center;padding:1rem}.rep95-dialog{position:relative;display:flex;align-items:center;justify-content:center;width:min(96vw,1320px);height:min(94vh,940px);color:#fff}.rep95-dialog figure{margin:0;text-align:center;max-width:calc(100% - 90px)}.rep95-dialog img{max-width:100%;max-height:calc(94vh - 95px);object-fit:contain}.rep95-count{padding:.5rem;font-size:1rem}.rep95-dialog button{border:1px solid #aaa;color:#fff;background:#252525;border-radius:50%;cursor:pointer;font-size:2rem;flex-shrink:0;width:42px;height:42px}.rep95-close{position:absolute;top:0;right:0;z-index:1}.rep95-prev,.rep95-next{margin:0 .35rem}body.rep95-open{overflow:hidden}@media(max-width:600px){.rep95-modal{padding:.2rem}.rep95-dialog figure{max-width:calc(100% - 78px)}.rep95-dialog button{width:34px;height:34px;font-size:1.5rem}}

/* 2.48.67.97: genuine viewport filling, uncropped images. */
.rep95-modal{padding:0!important;inset:0!important}
.rep95-dialog{width:100vw!important;height:100dvh!important;max-height:100dvh!important}
.rep95-dialog figure{width:calc(100vw - 116px);max-width:none!important;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}
.rep95-dialog img{max-width:100%!important;max-height:calc(100dvh - 65px)!important;width:auto!important;height:auto!important;object-fit:contain!important}
.rep95-prev,.rep95-next{position:absolute;top:50%;transform:translateY(-50%);z-index:2}.rep95-prev{left:12px}.rep95-next{right:12px}
.rep95-close{right:15px;top:15px}
.rep97-inline-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0 30px}
.rep97-inline-photo{margin:0!important;min-width:0}.rep97-inline-photo img{display:block;width:100%;aspect-ratio:16/10;height:auto;object-fit:cover;border-radius:12px;cursor:zoom-in;max-height:340px}
.rep97-inline-photo figcaption{font-size:12px;color:#536778;text-align:center;margin-top:6px}
@media(max-width:680px){.rep97-inline-photos{grid-template-columns:1fr;gap:14px}.rep95-dialog figure{width:calc(100vw - 82px)}.rep95-prev{left:2px}.rep95-next{right:2px}.rep95-dialog img{max-height:calc(100dvh - 72px)!important}}

/* 2.48.67.98: preserve each approved photograph in inline content, no center crop. */
.rep97-inline-photo img {aspect-ratio:auto!important;object-fit:contain!important;max-height:440px;height:auto!important;background:transparent}
.rep97-inline-photo figcaption{display:none!important}

/* 2.48.67.99 — Monaco FR detail pages ONLY.  All internal photos occupy
   identical 4:3 frames.  This deliberately supersedes the .98 auto-ratio
   declaration, which produced square/landscape rows with uneven heights.
   The catalogue, booking and full-screen lightbox are not affected. */
.rep95-gallery-scope[data-rep95-offer] .rep97-inline-photos {
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  align-items:start!important;
}
.rep95-gallery-scope[data-rep95-offer] .rep97-inline-photo {
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  aspect-ratio:4/3!important;
  overflow:hidden!important;
  border-radius:12px!important;
  background:#f1f2f1!important;
}
.rep95-gallery-scope[data-rep95-offer] .rep97-inline-photo img {
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
  object-position:center center!important;
  border-radius:0!important;
}
/* Last group has three photos: center the unmatched last photo at the
   same width and ratio as its siblings rather than stretching the row. */
.rep95-gallery-scope[data-rep95-offer] .rep97-inline-photos > .rep97-inline-photo:nth-child(odd):last-child {
  grid-column:1/-1!important;
  width:calc((100% - 18px)/2)!important;
  justify-self:center!important;
}
@media(max-width:680px) {
  .rep95-gallery-scope[data-rep95-offer] .rep97-inline-photos {grid-template-columns:minmax(0,1fr)!important;gap:14px!important}
  .rep95-gallery-scope[data-rep95-offer] .rep97-inline-photos > .rep97-inline-photo:nth-child(odd):last-child {grid-column:auto!important;width:100%!important}
}

/* 2.48.67.101 — Monaco detail lightbox: identical viewport frame,
   images fully visible (never stretched or cut). No extra button over hero. */
.rep95-gallery-scope .rep95-expand {display:none!important}
.rep95-modal:not([hidden]) {display:flex!important;position:fixed!important;inset:0!important;
 z-index:2147483000!important;background:#080b0e!important;padding:0!important}
.rep95-modal .rep95-dialog {width:100vw!important;height:100vh!important;height:100dvh!important;
 max-width:none!important;max-height:none!important;padding:0!important;margin:0!important;
 display:flex!important;align-items:center!important;justify-content:center!important}
.rep95-modal .rep95-dialog figure {width:100%!important;height:100%!important;max-width:none!important;
 margin:0!important;padding:38px 68px 46px!important;box-sizing:border-box!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 flex-direction:column!important;overflow:hidden!important;background:#080b0e!important}
.rep95-modal .rep95-dialog figure img {display:block!important;width:100%!important;height:100%!important;
 max-width:100%!important;max-height:100%!important;min-width:0!important;min-height:0!important;
 flex:1 1 auto!important;object-fit:contain!important;object-position:center!important;
 aspect-ratio:auto!important;border-radius:0!important;background:#080b0e!important}
.rep95-modal .rep95-dialog .rep95-count {position:absolute!important;bottom:6px!important;left:50%!important;
 transform:translateX(-50%)!important;color:#fff!important;background:rgba(0,0,0,.65)!important;
 border-radius:6px!important;padding:4px 12px!important;white-space:nowrap!important;line-height:1.3!important}
.rep95-modal .rep95-prev,.rep95-modal .rep95-next {position:absolute!important;top:50%!important;
 transform:translateY(-50%)!important;z-index:5!important;width:44px!important;height:44px!important;
 border-radius:50%!important;background:rgba(15,22,27,.78)!important;color:#fff!important}
.rep95-modal .rep95-prev {left:12px!important}.rep95-modal .rep95-next {right:12px!important}
.rep95-modal .rep95-close {position:absolute!important;top:max(12px,env(safe-area-inset-top))!important;
 right: max(12px,env(safe-area-inset-right))!important;z-index:6!important}
@media(max-width:680px) {
 .rep95-modal .rep95-dialog figure {padding:50px 12px 50px!important}
 .rep95-modal .rep95-prev,.rep95-modal .rep95-next {width:38px!important;height:38px!important;
  top:auto!important;bottom:5px!important;transform:none!important}
 .rep95-modal .rep95-prev {left:12px!important}.rep95-modal .rep95-next {right:12px!important}
}
