
/* MONOLIT V35: centered navigation labels on narrow screens. */
header nav > a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  line-height: 1.2 !important;
  box-sizing: border-box !important;
}
header nav > .monolit-share-nav {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
header nav .language-switch > a {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  line-height: 1 !important;
  border: 1px solid #6b6b6b !important;
  border-radius: 50% !important;
  aspect-ratio: 1 !important;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  min-height: 40px !important;
  padding: 0 !important;
  background: transparent !important;
}
header nav .language-switch > a[aria-current="page"] {
  border: 1.5px solid #d6b679 !important;
  color: #d6b679 !important;
}
header nav .language-switch > a:focus-visible {
  outline: 2px solid #e2c48c;
  outline-offset: 3px;
}
#monolit-contact-close {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  line-height: 1 !important;
  padding: 0 !important;
  flex: 0 0 38px !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
}
@media (max-width: 780px) {
  header nav > a { text-align:center !important; }
  header nav .language-switch > a {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
  }
}
@media (max-width: 390px) {
  header nav .language-switch > a {
    width: 35px !important;
    height: 35px !important;
    min-width: 35px !important;
    min-height: 35px !important;
  }
}


/* MONOLIT V36: neutralne obramowanie przycisku udostępniania,
   złote wyłącznie kiedy okno udostępniania jest otwarte. */
header nav button.monolit-share-nav,
header nav button.monolit-share-nav:hover,
header nav button.monolit-share-nav:focus:not(:focus-visible) {
  border:1px solid rgba(255,255,255,.78)!important;
  color:#eeeeee!important;
  background:rgba(255,255,255,.035)!important;
  box-shadow:none!important;
}
header nav button.monolit-share-nav[aria-expanded="true"],
header nav button.monolit-share-nav[aria-expanded="true"]:hover {
  border-color:#d6b77a!important;
  color:#d6b77a!important;
  background:rgba(214,183,122,.12)!important;
}
/* Cieńszy czarny obwód okna powiększonego zdjęcia. */
dialog#viewer {
  box-sizing:border-box!important;
  padding:6px!important;
}
#viewer > .bar {
  margin-bottom:5px!important;
}
@media (max-width:700px) {
  dialog#viewer {padding:4px!important;}
  #viewer > .bar {margin-bottom:4px!important;}
}


/* Compact frame around the entire photo and adjacent purchase panel. */
@media (min-width:1001px) and (pointer:fine) {
  dialog#viewer:not(.zoomed) {
    width:fit-content!important;
    max-width:calc(100vw - 12px)!important;
    height:fit-content!important;
    max-height:calc(100dvh - 12px)!important;
    min-width:0!important;
    min-height:0!important;
    padding:4px!important;
    overflow:hidden!important;
    margin:auto!important;
  }
  #viewer:not(.zoomed) > .bar {
    width:100%!important;
    min-height:0!important;
    margin:0 0 4px!important;
    padding:0!important;
  }
  #viewer:not(.zoomed) > .viewer-layout {
    flex:0 1 auto!important;
    width:fit-content!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    gap:6px!important;
    margin:0 auto!important;
    padding:0!important;
    justify-content:center!important;
    align-items:flex-start!important;
    overflow:hidden!important;
  }
  #viewer:not(.zoomed) .viewer-purchase {
    margin:0!important;
    padding:12px!important;
    max-height:calc(100dvh - 88px)!important;
    overflow-y:auto!important;
    align-self:flex-start!important;
  }
  #viewer:not(.zoomed) > #credit {margin:2px 0 0!important;}
}
/* Mobile: remove black gutters without shrinking the photo or obstructing controls. */
@media (max-width:1000px), (pointer:coarse) {
  dialog#viewer:not(.zoomed) {
    box-sizing:border-box!important;
    width:calc(100vw - 8px)!important;
    max-width:calc(100vw - 8px)!important;
    padding:3px!important;
    margin:auto!important;
  }
  #viewer:not(.zoomed) > .bar {margin-bottom:3px!important;}
  #viewer:not(.zoomed) .viewer-layout {gap:4px!important;}
  #viewer:not(.zoomed) .viewer-purchase {padding:10px!important;}
  #viewer:not(.zoomed) > #credit {margin-top:3px!important;}
}


/* Back to gallery: lower in its original page location, not moved under purchase UI. */
#galeria .gallery-return { margin-top:58px!important; margin-bottom:8px!important; }
@media(max-width:700px) {
  #galeria .gallery-return {margin-top:42px!important; margin-bottom:8px!important;}
}
/* Mobile photo viewer should wrap photo and purchase details rather than stretch
   an empty black backdrop across the phone screen. */
@media(max-width:700px) {
  dialog#viewer:not(.zoomed) {
    width:calc(100vw - 8px)!important;
    max-width:calc(100vw - 8px)!important;
    height:auto!important;
    min-height:0!important;
    max-height:calc(100dvh - 12px)!important;
    padding:3px!important;
    overflow-y:auto!important;
    margin:auto!important;
  }
  #viewer:not(.zoomed) > .viewer-layout {
    flex:0 0 auto!important;
    display:flex!important;
    flex-direction:column!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
    gap:3px!important;
  }
  #viewer:not(.zoomed):not(.showing-details) .viewer-layout .image-stage {
    flex:0 0 auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  #viewer:not(.zoomed):not(.showing-details) .viewer-layout .image-stage img#full {
    display:block!important;
    width:auto!important;
    height:auto!important;
    max-width:100%!important;
    max-height:calc(100dvh - 158px)!important;
    object-fit:contain!important;
    margin:0 auto!important;
  }
  #viewer:not(.zoomed).showing-details .viewer-layout .viewer-purchase {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    max-height:calc(100dvh - 150px)!important;
    overflow-y:auto!important;
    padding:10px!important;
    box-sizing:border-box!important;
  }
  #viewer:not(.zoomed) .viewer-details {margin-top:4px!important;}
  #viewer:not(.zoomed) .viewer-controls {padding-top:3px!important;}
  #viewer:not(.zoomed) #credit {margin-top:2px!important;}
}


/* V39: Override legacy full-height dialog and image-stage rules on phones. */
@media (max-width:700px) {
  html body dialog#viewer[open]:not(.zoomed) {
    box-sizing:border-box!important;
    width:calc(100vw - 8px)!important;
    max-width:calc(100vw - 8px)!important;
    height:max-content!important;
    min-height:0!important;
    max-height:calc(100dvh - 8px)!important;
    padding:3px!important;
    margin:auto!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
  }
  #viewer:not(.zoomed) > .bar {
    box-sizing:border-box!important;
    flex:0 0 auto!important;
    margin:0 0 3px!important;
    min-height:0!important;
    padding:1px 2px!important;
  }
  #viewer:not(.zoomed) > .viewer-layout {
    display:flex!important;
    flex:0 0 auto!important;
    flex-direction:column!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    gap:3px!important;
    align-items:center!important;
    justify-content:flex-start!important;
    overflow:visible!important;
  }
  #viewer:not(.zoomed) .viewer-layout > .monolit-photo-column {
    display:flex!important;
    flex:0 0 auto!important;
    flex-direction:column!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0 auto!important;
    padding:0!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
  }
  #viewer:not(.zoomed):not(.showing-details) .viewer-layout .image-stage {
    display:flex!important;
    flex:0 0 auto!important;
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    padding:0!important;
    margin:0 auto!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    overflow:hidden!important;
  }
  #viewer:not(.zoomed):not(.showing-details) .viewer-layout .image-stage img#full {
    display:block!important;
    flex:0 1 auto!important;
    position:static!important;
    box-sizing:border-box!important;
    width:auto!important;
    height:auto!important;
    max-width:100%!important;
    max-height:calc(100dvh - 122px)!important;
    min-width:0!important;
    min-height:0!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
    object-position:center center!important;
    margin:0 auto!important;
    transform:none!important;
  }
  #viewer:not(.zoomed):not(.showing-details) .viewer-purchase {display:none!important;}
  #viewer:not(.zoomed).showing-details .viewer-layout .image-stage{display:none!important;}
  #viewer:not(.zoomed).showing-details .viewer-purchase{
    display:block!important;
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    max-height:calc(100dvh - 126px)!important;
    padding:10px!important;
    margin:0!important;
    overflow-y:auto!important;
  }
  #viewer:not(.zoomed) .monolit-mobile-footer {
    flex:0 0 auto!important;
    margin:4px 0 0!important;
    padding:0!important;
  }
  #viewer:not(.zoomed) > #credit {
    flex:0 0 auto!important;
    margin:2px 0 0!important;
    padding:0!important;
    line-height:1.2!important;
  }
}


/* The gallery return follows the viewport only below the gallery. */
body > #powrot-do-galerii {
  display:none!important;
  position:fixed!important;
  bottom:clamp(14px,2.2vw,26px)!important;
  right:clamp(14px,2.2vw,26px)!important;
  left:auto!important;
  width:max-content!important;
  max-width:calc(100vw - 28px)!important;
  margin:0!important;
  padding:0!important;
  z-index:190;
  pointer-events:none;
}
body > #powrot-do-galerii.monolit-floating-visible {display:flex!important;pointer-events:auto;}
body > #powrot-do-galerii a {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:46px;
  padding:10px 17px;
  background:rgba(15,15,14,.96)!important;
  color:#eacb93!important;
  border:1px solid #b9985e!important;
  border-radius:26px!important;
  box-shadow:0 5px 22px rgba(0,0,0,.55);
  font-size:14px;
  font-weight:600;
  text-decoration:none;
  backdrop-filter:blur(8px);
}
body > #powrot-do-galerii a:hover,body > #powrot-do-galerii a:focus-visible {
  background:#2a241a!important;
  outline-offset:3px;
}
/* Never cover the photograph or a dialog. */
body:has(dialog[open]) > #powrot-do-galerii {display:none!important;}
@media(max-width:700px) {
  body > #powrot-do-galerii {
    right:12px!important;
    bottom:calc(12px + env(safe-area-inset-bottom, 0px))!important;
  }
  body > #powrot-do-galerii a {min-height:44px;padding:9px 14px;font-size:13px;}
}

/* V41: kiedy przycisk powrotu jest widoczny, chowamy pływający kontakt. */
body.monolit-gallery-return-active #monolit-contact-launch {
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
#monolit-contact-launch {
  transition: opacity .18s ease, visibility .18s ease;
}


/* Półprzezroczysty przycisk kontaktowy wyłącznie podczas przewijania. */
body.monolit-page-scrolling #monolit-contact-launch {
  opacity: .5 !important;
}
/* Priorytet dla przycisku powrotu na końcu strony. */
body.monolit-gallery-return-active #monolit-contact-launch {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
#monolit-contact-launch {
  transition: opacity .22s ease, visibility .18s ease !important;
}


#viewer .viewer-controls #prev,#viewer .viewer-controls #next,#viewer:not(.zoomed) .monolit-photo-column .viewer-controls #prev,#viewer:not(.zoomed) .monolit-photo-column .viewer-controls #next{background:rgba(18,17,15,.32)!important;color:rgba(226,209,178,.76)!important;border-color:rgba(197,165,107,.24)!important;font-weight:400!important;box-shadow:none!important}
#viewer .viewer-controls #prev:hover,#viewer .viewer-controls #next:hover,#viewer .viewer-controls #prev:focus-visible,#viewer .viewer-controls #next:focus-visible{background:rgba(60,49,33,.72)!important;color:#f5e5c6!important;border-color:rgba(197,165,107,.7)!important}
@media(max-width:700px){#viewer .monolit-mobile-footer #prev,#viewer .monolit-mobile-footer #next{min-height:44px!important;height:44px!important;padding:8px 2px!important;background:transparent!important;color:rgba(226,209,178,.70)!important;border:1px solid rgba(197,165,107,.20)!important;border-radius:5px!important;font-size:clamp(9px,2.5vw,11px)!important;font-weight:400!important;letter-spacing:0!important;box-shadow:none!important;filter:none!important}#viewer .monolit-mobile-footer #prev:active,#viewer .monolit-mobile-footer #next:active,#viewer .monolit-mobile-footer #prev:focus-visible,#viewer .monolit-mobile-footer #next:focus-visible{background:rgba(197,165,107,.13)!important;color:#f5e5c6!important;border-color:rgba(197,165,107,.65)!important}}


/* Mobile: prefer a complete, readable product sheet over a small internal scroller. */
@media (max-width:700px) {
  html body dialog#viewer[open].showing-details:not(.zoomed) {
    width:calc(100vw - 8px)!important;
    max-width:calc(100vw - 8px)!important;
    height:auto!important;
    max-height:calc(100dvh - 8px)!important;
    padding:7px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    box-sizing:border-box!important;
    overscroll-behavior:contain;
  }
  #viewer.showing-details:not(.zoomed) > .viewer-layout {
    display:block!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    flex:0 0 auto!important;
  }
  #viewer.showing-details:not(.zoomed) .viewer-layout .viewer-purchase {
    display:block!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    padding:12px 14px 10px!important;
    margin:0!important;
    border-radius:7px!important;
    box-sizing:border-box!important;
  }
  #viewer.showing-details:not(.zoomed) .bar {margin-bottom:5px!important;min-height:0!important}
  #viewer.showing-details .viewer-purchase .eyebrow {font-size:10px!important;line-height:1.25!important;margin:0 0 3px!important}
  #viewer.showing-details .viewer-purchase h2 {font-size:clamp(22px,6vw,29px)!important;line-height:1.08!important;margin:4px 0 7px!important}
  #viewer.showing-details .viewer-purchase p {font-size:12px!important;line-height:1.4!important;margin-top:5px!important;margin-bottom:7px!important}
  #viewer.showing-details #viewer-photo-description {font-size:12.5px!important;line-height:1.42!important;margin:0 0 7px!important}
  #viewer.showing-details .viewer-purchase dl {font-size:12px!important;line-height:1.3!important;gap:5px 10px!important;margin:8px 0!important;padding:8px 0!important}
  #viewer.showing-details .viewer-purchase .viewer-price {margin:7px 0!important}
  #viewer.showing-details .viewer-price strong {font-size:17px!important}
  #viewer.showing-details #viewer-buy {min-height:40px!important;align-items:center!important;padding:8px 13px!important;font-size:13px!important}
  #viewer.showing-details .viewer-purchase .purchase-provider {font-size:11px!important;margin:6px 0 2px!important}
  #viewer.showing-details .viewer-purchase .watermark-purchase-note {font-size:11px!important;line-height:1.35!important;margin:4px 0 6px!important}
  #viewer.showing-details .viewer-share {margin-top:7px!important}
  #viewer.showing-details .viewer-share button {min-height:38px!important;padding:6px 9px!important;font-size:12px!important}
  #viewer.showing-details .monolit-mobile-footer {margin-top:5px!important}
  #viewer.showing-details > #credit {margin-top:3px!important;font-size:10px!important}
}


/* Full disappearance while actively scrolling on both desktop and mobile. */
body.monolit-page-scrolling #monolit-contact-launch,
body.monolit-gallery-return-active #monolit-contact-launch {
  opacity:0!important;visibility:hidden!important;pointer-events:none!important;
}
#monolit-contact-launch {transition:opacity .24s ease,visibility .24s ease!important;}
/* Keep entire image in frame. Landscape shots get nearly edge-to-edge usable width. */
@media (max-width:700px) {
  html body dialog#viewer[open]:not(.zoomed):not(.monolit-portrait):not(.showing-details) {
    width:calc(100vw - 2px)!important;
    max-width:calc(100vw - 2px)!important;
    padding:1px!important;
  }
  #viewer:not(.zoomed):not(.monolit-portrait):not(.showing-details) .viewer-layout,
  #viewer:not(.zoomed):not(.monolit-portrait):not(.showing-details) .monolit-photo-column,
  #viewer:not(.zoomed):not(.monolit-portrait):not(.showing-details) .image-stage {
    width:100%!important;max-width:100%!important;min-width:0!important;
    padding:0!important;margin-left:0!important;margin-right:0!important;
  }
  #viewer:not(.zoomed):not(.monolit-portrait):not(.showing-details) .image-stage img#full {
    display:block!important;width:100%!important;height:auto!important;
    max-width:100%!important;max-height:calc(100dvh - 116px)!important;
    object-fit:contain!important;object-position:center center!important;
    margin:0 auto!important;flex:0 1 auto!important;
  }
}
/* Quiet fade without changing image geometry, controls or swipe event targets. */
@keyframes monolit-v46-image-enter {from{opacity:.52}to{opacity:1}}
@keyframes monolit-v46-details-enter {from{opacity:.25;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
#viewer:not(.zoomed):not(.showing-details) img#full.monolit-v46-enter {
  animation:monolit-v46-image-enter .27s ease-out both!important;
}
#viewer.showing-details:not(.zoomed) .viewer-purchase {
  animation:monolit-v46-details-enter .24s ease-out both;
}
@media(prefers-reduced-motion:reduce) {
  #viewer img#full.monolit-v46-enter,
  #viewer.showing-details .viewer-purchase {animation:none!important}
  #monolit-contact-launch {transition:none!important}
}


/* V48: gentler full fade, with delayed visibility after fading. */
#monolit-contact-launch {
  opacity: 1;
  visibility: visible;
  transition: opacity .9s ease-in-out, visibility 0s linear 0s !important;
}
body.monolit-page-scrolling #monolit-contact-launch,
body.monolit-gallery-return-active #monolit-contact-launch {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity .9s ease-in-out, visibility 0s linear .9s !important;
}
@media (prefers-reduced-motion:reduce) {
  #monolit-contact-launch,
  body.monolit-page-scrolling #monolit-contact-launch,
  body.monolit-gallery-return-active #monolit-contact-launch { transition: none !important; }
}


@media (orientation: landscape) and (max-height: 600px) and (pointer: coarse) {
  html body dialog#viewer[open]:not(.zoomed) {
    box-sizing:border-box!important;
    width:calc(100vw - 12px)!important;
    max-width:calc(100vw - 12px)!important;
    max-height:calc(100dvh - 8px)!important;
    height:auto!important;
    min-height:0!important;
    padding:3px 6px!important;
    margin:auto!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
  }
  #viewer:not(.zoomed) > .bar {
    min-height:0!important;
    flex-shrink:0!important;
    padding:0 2px!important;
    margin:0 0 2px!important;
  }
  #viewer:not(.zoomed) > .viewer-layout {
    display:flex!important;
    flex-direction:column!important;
    flex:0 0 auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    gap:2px!important;
    overflow:visible!important;
    align-items:center!important;
  }
  #viewer:not(.zoomed) .viewer-layout > .monolit-photo-column {
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    flex:0 0 auto!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    padding:0!important;
    margin:0 auto!important;
    overflow:visible!important;
  }
  #viewer:not(.zoomed):not(.showing-details) .viewer-layout .image-stage {
    display:flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    overflow:hidden!important;
    padding:0!important;
    margin:0 auto!important;
  }
  #viewer:not(.zoomed):not(.showing-details) .viewer-layout .image-stage img#full {
    display:block!important;
    position:static!important;
    flex:0 1 auto!important;
    width:auto!important;
    height:auto!important;
    min-width:0!important;
    min-height:0!important;
    max-width:100%!important;
    max-height:calc(100dvh - 104px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
    object-position:center center!important;
    transform:none!important;
    margin:0 auto!important;
  }
  #viewer:not(.zoomed) .monolit-mobile-footer,
  #viewer:not(.zoomed) .viewer-controls {
    flex-shrink:0!important;
  }
  #viewer:not(.zoomed).showing-details .viewer-layout .image-stage {display:none!important;}
  #viewer:not(.zoomed).showing-details .viewer-layout .viewer-purchase {
    display:block!important;
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    max-height:calc(100dvh - 78px)!important;
    overflow-y:auto!important;
  }
}


@media (orientation:landscape) and (max-height:600px) and (pointer:coarse) {
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) {
  position:fixed!important;inset:0!important;top:0!important;left:0!important;
  width:100vw!important;max-width:100vw!important;
  height:100vh!important;height:100dvh!important;
  max-height:100dvh!important;min-height:0!important;
  box-sizing:border-box!important;padding:0!important;margin:0!important;
  border:0!important;border-radius:0!important;
  overflow:hidden!important;background:#000!important;
 }
 #viewer:not(.zoomed):not(.showing-details) > .viewer-layout {
  position:absolute!important;inset:0!important;display:block!important;
  width:100%!important;height:100%!important;min-height:0!important;
  max-height:none!important;max-width:none!important;margin:0!important;
  padding:0!important;gap:0!important;overflow:hidden!important;
 }
 #viewer:not(.zoomed):not(.showing-details) .viewer-layout > .monolit-photo-column {
  position:absolute!important;inset:0!important;display:block!important;
  width:100%!important;height:100%!important;max-width:none!important;
  max-height:none!important;min-width:0!important;margin:0!important;padding:0!important;
 }
 #viewer:not(.zoomed):not(.showing-details) .viewer-layout .image-stage {
  position:absolute!important;inset:0!important;display:flex!important;
  justify-content:center!important;align-items:center!important;
  width:100%!important;height:100%!important;max-width:none!important;
  max-height:none!important;min-height:0!important;aspect-ratio:auto!important;
  margin:0!important;padding:0!important;overflow:hidden!important;
  background:#000!important;
 }
 #viewer:not(.zoomed):not(.showing-details) .viewer-layout .image-stage img#full {
  display:block!important;position:relative!important;inset:auto!important;
  width:100%!important;height:100%!important;
  max-width:100vw!important;max-height:100dvh!important;
  min-width:0!important;min-height:0!important;
  object-fit:contain!important;object-position:center center!important;
  margin:0!important;padding:0!important;transform:none!important;
 }
 #viewer:not(.zoomed):not(.showing-details) > .bar {
  position:absolute!important;top:0!important;left:0!important;right:0!important;
  z-index:30!important;display:flex!important;justify-content:flex-end!important;
  width:auto!important;height:auto!important;min-height:0!important;
  margin:0!important;padding:calc(3px + env(safe-area-inset-top,0px)) calc(8px + env(safe-area-inset-right,0px)) 0!important;
  background:transparent!important;pointer-events:none!important;
 }
 #viewer:not(.zoomed):not(.showing-details) > .bar #title {display:none!important;}
 #viewer:not(.zoomed):not(.showing-details) > .bar #close {
  pointer-events:auto!important;position:relative!important;z-index:31!important;
  min-height:34px!important;min-width:34px!important;
  margin:0!important;padding:4px 9px!important;
  border-radius:20px!important;background:rgba(0,0,0,.57)!important;
  color:#f4eee6!important;border:1px solid rgba(255,255,255,.3)!important;
 }
 #viewer:not(.zoomed):not(.showing-details) > .monolit-mobile-footer {
  display:grid!important;position:absolute!important;z-index:30!important;
  left:50%!important;bottom:calc(4px + env(safe-area-inset-bottom,0px))!important;
  transform:translateX(-50%)!important;
  width:min(94vw,440px)!important;max-width:94vw!important;
  margin:0!important;padding:2px!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) minmax(0,1fr)!important;
  gap:4px!important;background:rgba(0,0,0,.22)!important;border-radius:8px!important;
 }
 #viewer:not(.zoomed):not(.showing-details) .monolit-mobile-footer #prev,
 #viewer:not(.zoomed):not(.showing-details) .monolit-mobile-footer #next,
 #viewer:not(.zoomed):not(.showing-details) .monolit-mobile-footer .viewer-details {
  min-height:38px!important;padding:5px 3px!important;
  background:rgba(13,13,13,.68)!important;color:#e8d6b5!important;
  border:1px solid rgba(197,165,107,.36)!important;
  font-size:clamp(10px,1.55vw,12px)!important;
 }
 #viewer:not(.zoomed):not(.showing-details) > #credit {display:none!important;}
 /* Details panel keeps its own readable scroll layout instead of fullscreen image mode. */
 #viewer.showing-details:not(.zoomed) {max-height:100dvh!important;overflow-y:auto!important;}
}


/* Replace long close label with a discreet round cross, without reducing touch target excessively. */
html body #viewer .bar #close {
  display:inline-flex!important; align-items:center!important;justify-content:center!important;
  box-sizing:border-box!important; flex:0 0 auto!important;
  width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;
  max-width:34px!important;max-height:34px!important;
  padding:0!important;line-height:1!important;font-size:19px!important;font-weight:400!important;
  text-align:center!important;border-radius:50%!important;
}
@media (orientation:landscape) and (max-height:600px) and (pointer:coarse) {
  /* Hide the complete control strip in landscape for portrait AND landscape photos. */
  html body dialog#viewer[open] > .monolit-mobile-footer,
  html body dialog#viewer[open] .monolit-mobile-footer,
  html body dialog#viewer[open] > .viewer-controls,
  html body dialog#viewer[open] .viewer-controls,
  html body dialog#viewer[open] .viewer-details,
  html body dialog#viewer[open] #prev,
  html body dialog#viewer[open] #next {
    display:none!important;visibility:hidden!important;pointer-events:none!important;
    height:0!important;min-height:0!important;max-height:0!important;
    margin:0!important;padding:0!important;border:0!important;
    background:none!important;box-shadow:none!important;
  }
  /* No translucent decorative strip at the bottom of the photo viewer. */
  html body dialog#viewer[open]:not(.zoomed):not(.showing-details) {
    padding-bottom:0!important;background:#000!important;
  }
  html body dialog#viewer[open]:not(.zoomed):not(.showing-details) > #credit {display:none!important;}
}


/* The V54 forced 96dvh height and overflow:hidden cut off the navigation on some screens. */
@media (min-width:1001px) and (pointer:fine) {
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) {
   display:flex!important; flex-direction:column!important; align-items:center!important;
   box-sizing:border-box!important;
   width:min(96vw,1500px)!important;
   height:auto!important;max-height:calc(100dvh - 20px)!important;
   min-height:0!important; overflow-x:hidden!important; overflow-y:auto!important;
   padding:10px 12px 12px!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) > .bar {
   position:relative!important;flex:0 0 auto!important;align-self:stretch!important;
   width:100%!important;max-width:100%!important;min-height:30px!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) > .viewer-layout {
   position:relative!important;inset:auto!important;
   display:flex!important;flex:0 0 auto!important;justify-content:center!important;
   width:100%!important;max-width:100%!important;height:auto!important;
   min-height:0!important;overflow:visible!important;margin:0!important;padding:0!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) .viewer-layout > .monolit-photo-column {
   display:flex!important;flex-direction:column!important;align-items:center!important;
   flex:0 1 auto!important;width:auto!important;max-width:100%!important;
   min-width:0!important;height:auto!important;min-height:0!important;
   overflow:visible!important;margin:0!important;padding:0!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) .monolit-photo-column > .image-stage {
   position:relative!important;inset:auto!important;
   display:flex!important;align-items:center!important;justify-content:center!important;
   flex:0 1 auto!important;width:auto!important;height:auto!important;
   max-width:100%!important;max-height:calc(100dvh - 145px)!important;
   min-width:0!important;min-height:0!important;
   overflow:visible!important;margin:0!important;padding:0!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) .monolit-photo-column .image-stage > img#full {
   position:static!important;inset:auto!important;flex:0 1 auto!important;
   display:block!important;width:auto!important;height:auto!important;
   max-width:100%!important;max-height:calc(100dvh - 145px)!important;
   min-width:0!important;min-height:0!important;
   object-fit:contain!important;object-position:center!important;
   margin:0!important;padding:0!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) .monolit-photo-column > .viewer-controls {
   position:relative!important;display:flex!important;flex:0 0 auto!important;
   justify-content:center!important;align-items:center!important;
   width:100%!important;max-width:100%!important;min-height:40px!important;
   margin:8px auto 0!important;padding:0!important;overflow:visible!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) > #credit {
   position:relative!important;flex:0 0 auto!important;margin:4px auto 0!important;
 }
}
/* The middle purchase action is desktop-only. On phones only the "Opis i zakup" action opens purchase details. */
html body #viewer #v53-desktop-buy {display:none!important;}
@media (min-width:1001px) and (pointer:fine) {
 html body #viewer[open] .monolit-photo-column .viewer-controls #v53-desktop-buy {display:inline-flex!important;}
}
@media (max-width:1000px), (pointer:coarse) {
 html body #viewer[open]:not(.showing-details) #viewer-purchase,
 html body #viewer[open]:not(.showing-details) #viewer-buy {
   display:none!important;visibility:hidden!important;
 }
 html body #viewer[open] #v53-desktop-buy {display:none!important;visibility:hidden!important;}
}


@media (min-width:1001px) and (pointer:fine) {
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) {
   width:min(98vw,1700px)!important;max-width:98vw!important;
   padding:5px 8px 8px!important;max-height:calc(100dvh - 8px)!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) .viewer-layout,
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) .viewer-layout > .monolit-photo-column {
   width:100%!important;max-width:100%!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) .monolit-photo-column > .image-stage {
   width:100%!important;max-width:100%!important;
   max-height:calc(100dvh - 112px)!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) .monolit-photo-column .image-stage > img#full {
   width:auto!important;height:auto!important;max-width:100%!important;
   max-height:calc(100dvh - 112px)!important;object-fit:contain!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) .monolit-photo-column > .viewer-controls {
   box-sizing:border-box!important;display:flex!important;flex-direction:row!important;
   flex-wrap:nowrap!important;white-space:nowrap!important;
   align-items:center!important;justify-content:center!important;
   gap:clamp(5px,1.25vw,16px)!important;min-height:42px!important;
   width:100%!important;max-width:100%!important;
   margin:6px auto 0!important;padding:0 2px!important;overflow:visible!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) .monolit-photo-column > .viewer-controls > * {
   flex:0 0 auto!important;min-width:0!important;max-width:none!important;
   position:static!important;transform:none!important;margin:0!important;
 }
}


@media (min-width:1001px) and (pointer:fine){
 html body #viewer[open]:not(.zoomed){width:fit-content!important;max-width:calc(100vw - 24px)!important;height:auto!important;max-height:96dvh!important;box-sizing:border-box!important;padding:12px!important;overflow:hidden!important}
 html body #viewer:not(.zoomed) .viewer-layout{display:flex!important;flex:0 0 auto!important;align-items:flex-start!important;justify-content:center!important;width:auto!important;max-width:100%!important;height:auto!important;min-height:0!important;gap:10px!important;overflow:hidden!important}
 html body #viewer:not(.zoomed) .viewer-layout .image-stage{display:flex!important;flex:0 0 auto!important;align-items:center!important;justify-content:center!important;width:var(--monolit-fit-w,600px)!important;height:var(--monolit-fit-h,400px)!important;min-width:0!important;min-height:0!important;max-width:100%!important;max-height:calc(96dvh - 125px)!important;aspect-ratio:auto!important;overflow:hidden!important;background:transparent!important}
 html body #viewer:not(.zoomed) .viewer-layout .image-stage img#full{display:block!important;width:100%!important;height:100%!important;min-width:0!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important}
 html body #viewer:not(.zoomed) .viewer-layout .viewer-purchase{flex:0 0 280px!important;width:280px!important;max-width:280px!important;max-height:var(--monolit-fit-h,400px)!important;box-sizing:border-box!important;overflow-y:auto!important;align-self:flex-start!important}
 html body #viewer:not(.zoomed) .viewer-controls{flex:0 0 auto!important}
}
@media (max-width:700px), (pointer:coarse){
 html body #viewer:not(.zoomed) .viewer-details{min-height:42px!important;height:42px!important;margin-top:6px!important;padding:7px 13px!important;font-size:12px!important;font-weight:500!important;letter-spacing:.02em!important;border:1px solid rgba(203,179,132,.55)!important;background:rgba(24,23,21,.85)!important;color:#e6d5b6!important;border-radius:22px!important}
 html body #viewer .viewer-controls #prev,html body #viewer .viewer-controls #next{height:36px!important;min-height:36px!important;width:clamp(103px,32vw,133px)!important;padding:5px 8px!important;font-size:11px!important;font-weight:400!important;border-color:rgba(255,255,255,.45)!important;background:rgba(17,17,17,.8)!important;color:#dedbd5!important}
}


/* V63: frameless, scroll-free photo view on desktop and mobile. */
html:has(#viewer[open]),body:has(#viewer[open]){overflow:hidden!important;}
html body dialog#viewer[open]:not(.showing-details){
 position:fixed!important;inset:0!important;margin:auto!important;
 box-sizing:border-box!important;display:flex!important;flex-direction:column!important;
 align-items:center!important;justify-content:center!important;
 width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;
 padding:clamp(8px,2vh,18px) clamp(8px,2vw,20px)!important;
 background:transparent!important;border:0!important;border-radius:0!important;
 box-shadow:none!important;outline:0!important;overflow:hidden!important;
 scrollbar-width:none!important;
}
html body dialog#viewer[open]::-webkit-scrollbar,html body #viewer[open] .image-stage::-webkit-scrollbar{display:none!important;}
html body #viewer[open]::backdrop{background:rgba(0,0,0,.54)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;}
html body #viewer[open]:not(.showing-details) > .bar{
 box-sizing:border-box!important;position:relative!important;flex:0 0 30px!important;
 width:min(100%,1000px)!important;max-width:100%!important;min-height:30px!important;
 padding:0!important;margin:0 auto 5px!important;background:transparent!important;
}
html body #viewer[open]:not(.showing-details) > .viewer-layout{
 box-sizing:border-box!important;position:relative!important;inset:auto!important;
 display:flex!important;flex:1 1 auto!important;flex-direction:column!important;
 align-items:center!important;justify-content:center!important;
 width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;
 margin:0!important;padding:0!important;overflow:hidden!important;background:transparent!important;
}
html body #viewer[open]:not(.showing-details) .viewer-layout > .monolit-photo-column{
 box-sizing:border-box!important;display:flex!important;flex-direction:column!important;
 align-items:center!important;justify-content:center!important;flex:1 1 auto!important;
 width:100%!important;max-width:100%!important;height:100%!important;min-height:0!important;
 margin:0!important;padding:0!important;overflow:hidden!important;background:transparent!important;
}
html body #viewer[open]:not(.showing-details) .viewer-layout .image-stage{
 box-sizing:border-box!important;position:relative!important;inset:auto!important;
 display:flex!important;flex:1 1 auto!important;align-items:center!important;justify-content:center!important;
 width:100%!important;max-width:100%!important;height:100%!important;min-height:0!important;
 margin:0!important;padding:0!important;overflow:hidden!important;background:transparent!important;
 border:0!important;box-shadow:none!important;aspect-ratio:auto!important;
}
html body #viewer[open]:not(.showing-details) .viewer-layout .image-stage img#full{
 box-sizing:border-box!important;position:static!important;inset:auto!important;
 display:block!important;flex:0 1 auto!important;width:auto!important;height:auto!important;
 max-width:100%!important;max-height:100%!important;min-width:0!important;min-height:0!important;
 margin:0!important;padding:0!important;object-fit:contain!important;object-position:center!important;
 border:0!important;box-shadow:none!important;transform:none!important;
}
html body #viewer[open]:not(.showing-details) .viewer-controls{
 box-sizing:border-box!important;position:relative!important;inset:auto!important;
 display:flex!important;flex:0 0 40px!important;flex-direction:row!important;flex-wrap:nowrap!important;
 align-items:center!important;justify-content:center!important;
 gap:clamp(4px,1.5vw,12px)!important;width:100%!important;max-width:100%!important;
 min-height:40px!important;height:40px!important;margin:6px auto 0!important;padding:0!important;
 overflow:visible!important;background:transparent!important;
}
html body #viewer[open]:not(.showing-details) .viewer-controls > button,
html body #viewer[open]:not(.showing-details) .viewer-details{
 box-sizing:border-box!important;position:static!important;inset:auto!important;
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 flex:0 1 112px!important;width:112px!important;max-width:112px!important;min-width:0!important;
 height:36px!important;min-height:36px!important;max-height:36px!important;
 margin:0!important;padding:4px 5px!important;transform:none!important;
 border:1px solid rgba(255,255,255,.8)!important;border-radius:20px!important;
 background:rgba(0,0,0,.3)!important;color:#fff!important;
 font-size:11px!important;font-weight:400!important;letter-spacing:0!important;line-height:1.15!important;
 white-space:nowrap!important;text-align:center!important;
}
html body #viewer[open]:not(.showing-details) .viewer-controls #zoom{display:none!important;}
html body #viewer[open]:not(.showing-details) > #credit{display:none!important;}
/* Keep purchase details available, without affecting the photo layout. */
html body #viewer[open]:not(.showing-details) #viewer-purchase{display:none!important;}
@media(max-width:1000px),(pointer:coarse){
 html body #viewer[open]:not(.showing-details) .viewer-layout .monolit-photo-column > .viewer-controls{order:2!important;}
 html body #viewer[open]:not(.showing-details) .viewer-details{
   order:0!important;flex:0 1 112px!important;}
 html body #viewer[open]:not(.showing-details) .viewer-controls{gap:5px!important;}
 html body #viewer[open]:not(.showing-details) .viewer-controls > button,
 html body #viewer[open]:not(.showing-details) .viewer-details{
   width:clamp(0px,30vw,112px)!important;max-width:112px!important;
   font-size:clamp(9px,2.5vw,11px)!important;padding:3px!important;
 }
}


/* Single vertical photo+controls column; no competing absolute placements. */
html body #viewer[open]:not(.showing-details){display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:0!important;overflow:hidden!important;}
html body #viewer[open]:not(.showing-details) > .bar{flex:0 0 auto!important;height:28px!important;min-height:28px!important;margin:0 auto 4px!important;}
html body #viewer[open]:not(.showing-details) > .viewer-layout{display:flex!important;flex:0 1 auto!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;width:100%!important;height:auto!important;max-height:calc(100dvh - 70px)!important;min-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;}
html body #viewer[open]:not(.showing-details) .viewer-layout > .monolit-photo-column{display:flex!important;flex:0 1 auto!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;width:fit-content!important;max-width:100%!important;height:auto!important;max-height:100%!important;min-height:0!important;margin:0 auto!important;padding:0!important;gap:5px!important;overflow:hidden!important;}
html body #viewer[open]:not(.showing-details) .viewer-layout .monolit-photo-column > .image-stage{display:flex!important;position:relative!important;flex:0 1 auto!important;align-items:center!important;justify-content:center!important;width:fit-content!important;max-width:100%!important;height:auto!important;max-height:calc(100dvh - 130px)!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;}
html body #viewer[open]:not(.showing-details) .viewer-layout .image-stage img#full{display:block!important;position:static!important;flex:0 1 auto!important;width:auto!important;height:auto!important;max-width:min(94vw,1100px)!important;max-height:calc(100dvh - 130px)!important;min-width:0!important;min-height:0!important;object-fit:contain!important;margin:0!important;transform:none!important;}
html body #viewer[open]:not(.showing-details) .monolit-photo-column > .viewer-controls{display:flex!important;position:static!important;flex:0 0 auto!important;flex-flow:row nowrap!important;align-items:center!important;justify-content:center!important;gap:6px!important;width:100%!important;max-width:100%!important;height:36px!important;min-height:36px!important;margin:0!important;padding:0!important;overflow:visible!important;transform:none!important;}
html body #viewer[open]:not(.showing-details) .viewer-controls > #prev,
html body #viewer[open]:not(.showing-details) .viewer-controls > #next,
html body #viewer[open]:not(.showing-details) .viewer-controls > .viewer-details{all:unset!important;box-sizing:border-box!important;display:inline-flex!important;position:static!important;flex:0 1 112px!important;align-items:center!important;justify-content:center!important;width:112px!important;max-width:112px!important;min-width:0!important;height:34px!important;min-height:34px!important;max-height:34px!important;margin:0!important;padding:0 4px!important;border:1px solid #fff!important;border-radius:18px!important;background:rgba(0,0,0,.28)!important;color:#fff!important;font:400 11px/1.1 Arial,sans-serif!important;letter-spacing:0!important;white-space:nowrap!important;text-align:center!important;cursor:pointer!important;transform:none!important;}
html body #viewer[open]:not(.showing-details) .viewer-controls > #zoom{display:none!important;}
html body #viewer[open]:not(.showing-details) .viewer-controls > .viewer-details .viewer-back-label{display:none!important;}
@media(max-width:600px){
 html body #viewer[open]:not(.showing-details) .viewer-layout .image-stage img#full{max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 125px)!important;}
 html body #viewer[open]:not(.showing-details) .viewer-layout .monolit-photo-column > .image-stage{max-height:calc(100dvh - 125px)!important;}
 html body #viewer[open]:not(.showing-details) .viewer-controls > #prev,
 html body #viewer[open]:not(.showing-details) .viewer-controls > #next,
 html body #viewer[open]:not(.showing-details) .viewer-controls > .viewer-details{flex:1 1 0!important;width:auto!important;max-width:105px!important;font-size:clamp(9px,2.6vw,11px)!important;}
}


@media (min-width:1001px) and (pointer:fine) {
  html body dialog#viewer[open] .monolit-photo-column .viewer-controls #v53-desktop-buy {display:none!important;visibility:hidden!important;}
}


/* Desktop: portrait titles use the same top-of-photo title bar as landscapes. */
@media (min-width:1001px) and (pointer:fine) {
  html body #viewer[open].monolit-portrait > .bar {
    box-sizing:border-box!important; width:min(480px,52vw)!important; max-width:100%!important;
    margin-left:auto!important;margin-right:auto!important;
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    text-align:left!important;
  }
  html body #viewer[open].monolit-portrait > .bar #title {
    flex:1 1 auto!important;min-width:0!important;text-align:left!important;
    font-size:inherit!important;font-weight:inherit!important;letter-spacing:inherit!important;
  }
}
/* Mobile: when description/purchase is open, keep navigation at the bottom. */
@media (max-width:1000px), (pointer:coarse) {
  html body #viewer[open].showing-details {padding-bottom:62px!important;box-sizing:border-box!important;}
  html body #viewer[open].showing-details .viewer-layout {padding-bottom:0!important;}
  html body #viewer[open].showing-details .monolit-photo-column > .viewer-controls {
    display:flex!important;flex-flow:row nowrap!important;justify-content:center!important;align-items:center!important;
    position:fixed!important;left:50%!important;right:auto!important;bottom:max(10px,env(safe-area-inset-bottom))!important;
    top:auto!important;transform:translateX(-50%)!important;z-index:9999!important;
    width:calc(100vw - 20px)!important;max-width:370px!important;min-height:36px!important;height:auto!important;
    margin:0!important;padding:3px 0!important;gap:5px!important;box-sizing:border-box!important;
    background:rgba(0,0,0,.82)!important;border:0!important;
  }
  html body #viewer[open].showing-details .viewer-controls > #prev,
  html body #viewer[open].showing-details .viewer-controls > #next,
  html body #viewer[open].showing-details .viewer-controls > .viewer-details {
    all:unset!important;box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
    flex:1 1 0!important;min-width:0!important;max-width:120px!important;height:32px!important;
    padding:3px!important;border:1px solid #fff!important;border-radius:999px!important;
    background:rgba(0,0,0,.4)!important;color:#fff!important;text-align:center!important;
    font-size:clamp(9px,2.5vw,11px)!important;line-height:1.1!important;white-space:nowrap!important;cursor:pointer!important;
  }
  html body #viewer[open].showing-details .viewer-controls > #zoom,
  html body #viewer[open].showing-details .viewer-controls > #v53-desktop-buy {display:none!important;}
  html body #viewer[open].showing-details .viewer-controls > .viewer-details .viewer-details-label {display:none!important;}
  html body #viewer[open].showing-details .viewer-controls > .viewer-details .viewer-back-label {display:inline!important;}
  html body #viewer[open].showing-details #viewer-purchase {padding-bottom:55px!important;box-sizing:border-box!important;}
}


/* Mobile details: navigation immediately follows the actual purchase panel. */
@media (max-width:1000px), (pointer:coarse) {
 html body #viewer[open].showing-details #viewer-purchase {
   max-height:calc(100dvh - 110px)!important;
   padding-bottom:12px!important;
 }
 html body #viewer[open].showing-details .monolit-photo-column > .viewer-controls {
   top:var(--monolit-v70-controls-top,calc(50% + 190px))!important;
   bottom:auto!important;
   background:transparent!important;
   padding:0!important;
 }
}


@media (min-width:1001px) and (pointer:fine) {
 html body dialog#viewer[open]:not(.showing-details):not(.zoomed) > .bar #title {
  display:block!important;position:fixed!important;
  left:var(--monolit-v75-title-x,50vw)!important;
  top:var(--monolit-v75-title-y,10vh)!important;
  width:var(--monolit-v75-title-width,400px)!important;
  max-width:calc(100vw - 32px)!important;
  transform:translateX(-50%)!important;
  box-sizing:border-box!important;margin:0!important;padding:0!important;
  text-align:center!important;white-space:nowrap!important;
  overflow:hidden!important;text-overflow:ellipsis!important;
  z-index:90!important;pointer-events:none!important;
 }
}


@media (min-width:1001px) and (pointer:fine) {
 /* The +/- follows the question text, not the FAQ container's right edge. */
 html body .purchase-faq details > summary {
   display:inline-flex!important;width:max-content!important;max-width:100%!important;
   justify-content:flex-start!important;gap:9px!important;
 }
 html body .purchase-faq details > summary::after {flex:0 0 auto!important;margin:0!important;}
 /* Position the close control from the actual rendered photograph bounds. */
 html body dialog#viewer[open]:not(.showing-details):not(.zoomed) > .bar {
   position:static!important;transform:none!important;
 }
 html body dialog#viewer[open]:not(.showing-details):not(.zoomed) > .bar #close {
   position:absolute!important;left:var(--monolit-v76-close-left,auto)!important;
   top:var(--monolit-v76-close-top,auto)!important;
   right:auto!important;bottom:auto!important;transform:none!important;
   margin:0!important;z-index:120!important;
 }
}


@media (min-width:1001px) and (pointer:fine) {
 html body dialog#viewer[open]:not(.showing-details):not(.zoomed) > .bar #close {
  position:fixed!important;left:var(--monolit-v77-x, 12px)!important;top:var(--monolit-v77-y, 12px)!important;
  right:auto!important;bottom:auto!important;transform:none!important;z-index:2147483640!important;
  display:inline-flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;
 }
}


@media (min-width:1001px) and (pointer:fine) {
 html body dialog#viewer[open]:not(.showing-details):not(.zoomed) > .bar #close {
  position:fixed!important;
  left:var(--monolit-v78-close-x, 12px)!important;
  top:var(--monolit-v78-close-y, 8px)!important;
  right:auto!important;bottom:auto!important;
  transform:none!important;margin:0!important;
  z-index:2147483646!important;visibility:visible!important;
  opacity:1!important;display:inline-flex!important;pointer-events:auto!important;
 }
}


/* One fixed 3-photo row composition at every screen size; only scale varies. */
#galeria #grid:not(.gallery-large){display:flex!important;flex-wrap:wrap!important;gap:4px!important;justify-content:flex-start!important;align-items:flex-start!important;}
#galeria #grid:not(.gallery-large)>.photo{flex:0 0 auto!important;max-width:none!important;min-width:0!important;}


@media (min-width:701px) and (pointer:fine) {
  html body #monolit-contact-launch {
    opacity:1!important; visibility:visible!important;
    transition:opacity 1s ease-in-out, visibility 0s linear 0s!important;
    will-change:opacity;
  }
  html body.monolit-page-scrolling:not(.monolit-gallery-return-active) #monolit-contact-launch {
    opacity:.15!important; visibility:visible!important; pointer-events:auto!important;
    transition:opacity 1s ease-in-out, visibility 0s linear 0s!important;
  }
  html body.monolit-gallery-return-active #monolit-contact-launch {
    opacity:0!important; visibility:hidden!important; pointer-events:none!important;
  }
}
@media (min-width:701px) and (pointer:fine) and (prefers-reduced-motion:reduce) {
  html body #monolit-contact-launch,html body.monolit-page-scrolling #monolit-contact-launch {transition:none!important;}
}


/* V104: one mobile fit mechanism, replacing V92-V103 experimental overrides.
   Keep desktop styles and the original purchase panel intact. */
@media (pointer:coarse), (max-width:700px) {
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) {
   box-sizing:border-box!important;
   position:fixed!important;inset:0!important;margin:0!important;
   padding:0!important; width:100vw!important;max-width:100vw!important;
   height:var(--v104-viewport-h,100dvh)!important;
   max-height:var(--v104-viewport-h,100dvh)!important;
   display:flex!important;flex-direction:column!important;
   align-items:stretch!important;justify-content:center!important;
   overflow:hidden!important; border:0!important; border-radius:0!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) > .bar {
   box-sizing:border-box!important;position:absolute!important;
   left:0!important;right:0!important;top:0!important;
   width:100%!important;max-width:100%!important;
   height:0!important;min-height:0!important;max-height:0!important;
   margin:0!important;padding:0!important;flex:0 0 0!important;
   z-index:30!important;overflow:visible!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) > .bar #title {
   display:none!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) > .bar #close {
   box-sizing:border-box!important;position:fixed!important;
   left:auto!important;bottom:auto!important;right:8px!important;top:8px!important;
   transform:none!important;margin:0!important;z-index:40!important;
   display:flex!important;align-items:center!important;justify-content:center!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) > .viewer-layout {
   box-sizing:border-box!important;position:relative!important;inset:auto!important;
   display:flex!important;flex:1 1 100%!important; flex-direction:column!important;
   align-items:center!important;justify-content:center!important;
   width:100%!important; max-width:100%!important;height:100%!important;max-height:100%!important;
   min-height:0!important; margin:0!important;padding:0!important;gap:0!important;
   overflow:hidden!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) .viewer-layout > .monolit-photo-column {
   box-sizing:border-box!important;position:static!important;
   display:flex!important;flex:0 0 auto!important;flex-direction:column!important;
   align-items:center!important;justify-content:center!important;
   width:100%!important;max-width:100%!important;
   height:auto!important;max-height:100%!important; min-height:0!important;
   margin:0!important;padding:0!important;gap:8px!important;
   overflow:visible!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) .monolit-photo-column > .image-stage {
   box-sizing:border-box!important;position:relative!important;inset:auto!important;
   display:flex!important;flex:0 0 auto!important;
   align-items:center!important;justify-content:center!important;
   width:var(--v104-image-w,1px)!important;
   height:var(--v104-image-h,1px)!important;
   min-width:0!important;min-height:0!important;
   max-width:none!important;max-height:none!important;
   margin:0!important;padding:0!important;overflow:hidden!important;
   aspect-ratio:auto!important;transform:none!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) .image-stage > img#full {
   box-sizing:border-box!important;position:static!important;
   display:block!important;flex:0 0 auto!important;
   width:var(--v104-image-w,1px)!important;
   height:var(--v104-image-h,1px)!important;
   max-width:none!important;max-height:none!important;
   min-width:0!important;min-height:0!important;
   margin:0!important;padding:0!important;
   object-fit:contain!important;object-position:center!important;
   transform:none!important;
 }
 html body dialog#viewer[open]:not(.zoomed):not(.showing-details) .monolit-photo-column > .viewer-controls {
   box-sizing:border-box!important;position:static!important;inset:auto!important;
   display:flex!important;flex:0 0 36px!important;flex-direction:row!important;
   align-items:center!important;justify-content:space-between!important;
   width:var(--v104-image-w,1px)!important;max-width:none!important;min-width:0!important;
   height:36px!important;min-height:36px!important;max-height:36px!important;
   margin:0!important;padding:0!important;gap:0!important;overflow:visible!important;
   transform:none!important;
 }
 html body dialog#viewer[open] .viewer-controls > :not(#prev):not(#next),
 html body dialog#viewer[open] > .viewer-details,
 html body dialog#viewer[open] > .monolit-mobile-footer,
 html body dialog#viewer[open] .viewer-purchase {
   display:none!important;visibility:hidden!important;
 }
 html body dialog#viewer[open] .viewer-controls > #prev,
 html body dialog#viewer[open] .viewer-controls > #next {
   all:unset!important;box-sizing:border-box!important;display:flex!important;
   flex:0 0 36px!important;width:36px!important;min-width:36px!important;
   height:36px!important;min-height:36px!important;max-height:36px!important;
   align-items:center!important;justify-content:center!important;
   position:static!important;inset:auto!important;transform:none!important;
   padding:0!important;margin:0!important;border:0!important;border-radius:0!important;
   background:transparent!important;box-shadow:none!important;
   color:#eee!important;font-size:0!important;line-height:1!important;
   opacity:1!important;visibility:visible!important;cursor:pointer!important;
 }
 html body dialog#viewer[open] .viewer-controls > #prev::before {
   content:'\2190'!important;font:300 29px/1 Arial,sans-serif!important;
 }
 html body dialog#viewer[open] .viewer-controls > #next::before {
   content:'\2192'!important;font:300 29px/1 Arial,sans-serif!important;
 }
}


/* Independent mobile photo viewport: isolated from historical #viewer layout. */
#monolit-mobile-fit{display:none}
@media (pointer:coarse), (max-width:700px) {
 html body dialog#viewer[open] #monolit-mobile-fit {
  position:fixed!important;inset:0!important;z-index:2147483000!important;
  display:flex!important;box-sizing:border-box!important;background:#000!important;
  align-items:center!important;justify-content:center!important;
  width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;
  padding:0!important;margin:0!important;border:0!important;overflow:hidden!important;
  overscroll-behavior:contain!important;touch-action:pan-y!important;
 }
 html body #monolit-mobile-fit .mv107-stack {
  display:flex!important;flex-direction:column!important;align-items:center!important;
  justify-content:center!important;box-sizing:border-box!important;flex:0 0 auto!important;
  gap:8px!important;width:auto!important;height:auto!important;padding:0!important;margin:0!important;
  background:transparent!important;border:0!important;min-width:0!important;min-height:0!important;
 }
 html body #monolit-mobile-fit #mv107-photo {
  display:block!important;position:static!important;flex:0 0 auto!important;
  object-fit:contain!important;object-position:center!important;
  max-width:none!important;max-height:none!important;min-width:0!important;min-height:0!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
  transform:none!important;opacity:1!important;visibility:visible!important;
  user-select:none!important;-webkit-user-drag:none!important;
 }
 html body #monolit-mobile-fit .mv107-arrows {
  box-sizing:border-box!important;display:flex!important;position:static!important;
  align-items:center!important;justify-content:space-between!important;
  flex:0 0 36px!important;width:100%!important;height:36px!important;
  padding:0!important;margin:0!important;gap:0!important;background:none!important;
 }
 html body #monolit-mobile-fit .mv107-arrows button {
  all:unset!important;box-sizing:border-box!important;display:flex!important;
  align-items:center!important;justify-content:center!important;
  width:38px!important;height:36px!important;padding:0!important;margin:0!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;
  background:transparent!important;color:#fff!important;font:300 30px/1 Arial,sans-serif!important;
  cursor:pointer!important;touch-action:manipulation!important;
 }
 html body #monolit-mobile-fit #mv107-close {
  all:unset!important;box-sizing:border-box!important;display:flex!important;
  position:absolute!important;top:10px!important;right:10px!important;z-index:9!important;
  width:42px!important;height:42px!important;align-items:center!important;justify-content:center!important;
  border:1px solid #555!important;border-radius:50%!important;
  background:rgba(0,0,0,.6)!important;color:#fff!important;font:300 27px/1 Arial,sans-serif!important;
  cursor:pointer!important;touch-action:manipulation!important;
 }
}


/* V108: a single CSS-driven full-viewport photo, without bottom arrows. */
@media (pointer:coarse), (max-width:700px) {
 html body dialog#viewer[open] > :not(#monolit-mobile-fit) {display:none!important;}
 html body dialog#viewer[open] #monolit-mobile-fit {
   display:flex!important;position:fixed!important;inset:0!important;
   width:100%!important;height:100%!important;height:100dvh!important;
   max-width:none!important;max-height:none!important;
   box-sizing:border-box!important;margin:0!important;padding:0!important;
   background:#000!important;align-items:center!important;justify-content:center!important;
   overflow:hidden!important;z-index:2147483000!important;
 }
 html body #monolit-mobile-fit .mv107-stack {
   display:flex!important;position:relative!important;flex:1 1 auto!important;
   width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;
   max-width:100%!important;max-height:100%!important;
   align-items:center!important;justify-content:center!important;
   box-sizing:border-box!important;padding:12px!important;margin:0!important;
   overflow:hidden!important;
 }
 html body #monolit-mobile-fit #mv107-photo {
   display:block!important;position:relative!important;
   width:100%!important;height:100%!important;
   max-width:100%!important;max-height:100%!important;
   min-width:0!important;min-height:0!important;
   object-fit:contain!important;object-position:center!important;
   margin:0!important;padding:0!important;transform:none!important;
   opacity:1!important;visibility:visible!important;
 }
 html body #monolit-mobile-fit .mv107-arrows,
 html body #monolit-mobile-fit #mv107-prev,
 html body #monolit-mobile-fit #mv107-next {display:none!important;}
 html body #monolit-mobile-fit #mv107-close {z-index:10!important;}
}


/* Only the independent mobile photo viewer; desktop unaffected. */
@media (pointer:coarse), (max-width:700px) {
 html body dialog#viewer[open] #monolit-mobile-fit #mv107-close {
  width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;
  max-width:30px!important;max-height:30px!important;
  font-size:19px!important;line-height:1!important;
  top:10px!important;right:10px!important;
  padding:0!important;border-width:1px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
 }
}


/* Landscape phones only: reclaim the viewer padding while retaining the entire image.
   Photo remains object-fit:contain; no cropping and no impact on desktop. */
@media (orientation:landscape) and (pointer:coarse) and (max-height:650px) {
 html body dialog#viewer[open] #monolit-mobile-fit .mv107-stack {
   padding:0!important;gap:0!important;
   width:100%!important;height:100%!important;
   max-width:100%!important;max-height:100%!important;
 }
 html body dialog#viewer[open] #monolit-mobile-fit #mv107-photo {
   width:100%!important;height:100%!important;
   max-width:100%!important;max-height:100%!important;
   object-fit:contain!important;
 }
}


/* Mobile photo and swipe hint share the same precisely-sized column. */
@media (pointer:coarse), (max-width:700px) {
 html body dialog#viewer[open] #monolit-mobile-fit {
   align-items:center!important;justify-content:center!important;
   width:100vw!important;height:100dvh!important;
 }
 html body dialog#viewer[open] #monolit-mobile-fit .mv107-stack {
   position:relative!important;display:flex!important;flex-direction:column!important;
   align-items:center!important;justify-content:flex-start!important;
   flex:0 0 auto!important;width:max-content!important;height:max-content!important;
   max-width:100vw!important;max-height:100dvh!important;
   min-width:0!important;min-height:0!important;padding:0!important;
   gap:0!important;overflow:visible!important;margin:0!important;
 }
 html body dialog#viewer[open] #monolit-mobile-fit #mv107-photo {
   display:block!important;position:static!important;flex:0 0 auto!important;
   padding:0!important;margin:0!important;min-width:0!important;min-height:0!important;
   max-width:none!important;max-height:none!important;
   object-fit:contain!important;object-position:center!important;
 }
 html body dialog#viewer[open] #monolit-mobile-fit #mv112-swipe-hint {
   position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
   transform:none!important;box-sizing:border-box!important;
   width:100%!important;height:34px!important;min-height:34px!important;
   margin:0!important;padding:2px 3px 0!important;
   gap:0!important;display:flex!important;flex:0 0 34px!important;
   align-items:center!important;justify-content:space-between!important;
   z-index:8!important;pointer-events:none!important;
   opacity:0!important;visibility:hidden!important;
   transition:opacity .35s ease, visibility .35s ease!important;
 }
 html body dialog#viewer[open] #monolit-mobile-fit #mv112-swipe-hint.mv112-visible {
   opacity:.85!important;visibility:visible!important;
 }
 html body #monolit-mobile-fit #mv112-swipe-hint .mv112-arrow {
   width:66px!important;height:26px!important;
   color:#f3f3f3!important;filter:none!important;
 }
 html body #monolit-mobile-fit #mv112-swipe-hint.mv112-visible .mv112-left {animation:mv114-left 1.15s ease-in-out infinite!important}
 html body #monolit-mobile-fit #mv112-swipe-hint.mv112-visible .mv112-right {animation:mv114-right 1.15s ease-in-out infinite!important}
 @keyframes mv114-left {0%,100%{transform:translateX(0);opacity:.65}50%{transform:translateX(-5px);opacity:1}}
 @keyframes mv114-right {0%,100%{transform:translateX(0);opacity:.65}50%{transform:translateX(5px);opacity:1}}
 @media (prefers-reduced-motion:reduce) {
  html body #monolit-mobile-fit #mv112-swipe-hint.mv112-visible span {animation:none!important}
 }
}


/* Mobile only: centered close-together arrows, minimal landscape hint height. */
@media (pointer:coarse), (max-width:700px) {
 html body dialog#viewer[open] #monolit-mobile-fit #mv112-swipe-hint {
   justify-content:center!important;
   column-gap:24px!important;
   gap:24px!important;
   padding:0!important;
 }
}
@media (orientation:landscape) and (pointer:coarse) and (max-height:650px) {
 html body dialog#viewer[open] #monolit-mobile-fit #mv112-swipe-hint {
   height:12px!important;min-height:12px!important;flex-basis:12px!important;
 }
 html body dialog#viewer[open] #monolit-mobile-fit #mv112-swipe-hint .mv112-arrow {
   height:18px!important;
 }
}


@media (orientation:landscape) and (pointer:coarse) and (max-height:650px) {
 html body dialog#viewer[open] #monolit-mobile-fit #mv112-swipe-hint {overflow:visible!important;}
 html body dialog#viewer[open] #monolit-mobile-fit #mv112-swipe-hint .mv112-arrow {overflow:visible!important;}
}

#galeria #grid>a.photo{display:block;width:100%;cursor:pointer;text-decoration:none;color:inherit}

@media (min-width:1001px) and (pointer:fine) {
 html body dialog#viewer[open] .viewer-controls,
 html body dialog#viewer[open] .monolit-photo-column > .viewer-controls,
 html body dialog#viewer[open] .viewer-details,
 html body dialog#viewer[open] #v53-desktop-buy {display:none!important;visibility:hidden!important;}
 html body dialog#viewer[open] #mv122-desktop-hint {
   position:fixed!important;left:0;top:0;z-index:2147483640;
   display:flex;align-items:center;justify-content:center;gap:16px;
   width:156px;height:30px;box-sizing:border-box;
   color:#eee;pointer-events:none;opacity:0;visibility:hidden;
   transition:opacity .25s ease,visibility .25s ease;
 }
 html body dialog#viewer[open] #mv122-desktop-hint.mv122-visible {opacity:.95;visibility:visible;}
 html body #mv122-desktop-hint svg{width:70px;height:26px;overflow:visible;}
}


@media (pointer:coarse), (max-width:700px) {
 html body dialog#viewer[open] #monolit-mobile-fit .mv107-stack,
 html body dialog#viewer[open] #monolit-mobile-fit #mv107-photo { touch-action:none!important; }
 html body dialog#viewer[open] #monolit-mobile-fit .mv107-stack { overflow:hidden!important; }
 html body dialog#viewer[open] #monolit-mobile-fit #mv107-photo { transform-origin:center center!important; }
}


/* Desktop: control immediately beneath the real image width. */
@media (min-width:701px) and (pointer:fine) {
 html body dialog#viewer[open] .monolit-photo-column > .viewer-photo-share-row {
  box-sizing:border-box!important;display:flex!important;order:1!important;
  flex:0 0 28px!important;height:28px!important;min-height:28px!important;
  width:var(--v104-image-w,100%)!important;max-width:100%!important;
  margin:0!important;padding:0!important;justify-content:flex-end!important;
  align-items:center!important;overflow:visible!important;
 }
}
/* On phones the photo uses an independent viewer. Put its share icon in the
   reserved strip directly below the image, rather than the hidden desktop layer. */
@media (pointer:coarse), (max-width:700px) {
 html body dialog#viewer[open] #monolit-mobile-fit .mv107-stack #mv177-photo-share {
  all:unset!important;box-sizing:border-box!important;
  position:absolute!important;right:2px!important;bottom:0!important;
  z-index:2147483100!important;display:flex!important;
  width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;
  align-items:center!important;justify-content:center!important;
  color:#fff!important;opacity:1!important;visibility:visible!important;
  background:transparent!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;cursor:pointer!important;touch-action:manipulation!important;
  pointer-events:auto!important;
 }
 html body #monolit-mobile-fit #mv177-photo-share svg {
  width:20px!important;height:20px!important;display:block!important;
  color:#fff!important;stroke:#fff!important;pointer-events:none!important;
 }
 html body #monolit-mobile-fit #mv177-photo-share:focus-visible {
  outline:1px solid rgba(255,255,255,.8)!important;outline-offset:1px!important;
 }
}
@media (orientation:landscape) and (pointer:coarse) and (max-height:650px) {
 html body dialog#viewer[open] #monolit-mobile-fit .mv107-stack #mv177-photo-share {
  height:24px!important;min-height:24px!important;bottom:0!important;
 }
 html body #monolit-mobile-fit #mv177-photo-share svg {width:19px!important;height:19px!important;}
}


/* Desktop: align the share row to the real visible image edge and make the icon a bit clearer. */
@media (min-width:701px) and (pointer:fine) {
  html body dialog#viewer[open] .monolit-photo-column{position:relative!important;}
  html body dialog#viewer[open] .monolit-photo-column > .viewer-photo-share-row{
    box-sizing:border-box!important;display:flex!important;order:1!important;
    width:100%!important;max-width:100%!important;min-height:30px!important;height:30px!important;
    margin:4px 0 0 0!important;padding:0 var(--mv178-share-right,0px) 0 0!important;
    justify-content:flex-end!important;align-items:center!important;overflow:visible!important;
  }
  html body dialog#viewer[open] .monolit-photo-column > .viewer-photo-share-row #photo-share{
    width:30px!important;height:30px!important;color:rgba(255,255,255,.94)!important;opacity:.94!important;
  }
  html body dialog#viewer[open] .monolit-photo-column > .viewer-photo-share-row #photo-share svg{
    width:18px!important;height:18px!important;stroke-width:1.9!important;
  }
}
/* Mobile: keep the good position but make the icon more transparent. */
@media (pointer:coarse), (max-width:700px) {
  html body dialog#viewer[open] #monolit-mobile-fit .mv107-stack #mv177-photo-share{
    right:2px!important;bottom:0!important;opacity:.72!important;color:rgba(255,255,255,.78)!important;
  }
  html body #monolit-mobile-fit #mv177-photo-share svg{
    width:20px!important;height:20px!important;color:rgba(255,255,255,.78)!important;stroke:currentColor!important;stroke-width:1.85!important;
  }
  html body #monolit-mobile-fit #mv177-photo-share:hover,
  html body #monolit-mobile-fit #mv177-photo-share:focus-visible,
  html body #monolit-mobile-fit #mv177-photo-share:active{opacity:.9!important;color:#fff!important;}
}


/* The desktop icon is positioned against the actual rendered image rectangle, not the flexible gallery column. */
@media (min-width:701px) and (pointer:fine) {
  html body dialog#viewer[open] > #photo-share {
    position:absolute!important;display:flex!important;visibility:visible!important;
    left:var(--mv179-x,0px)!important;top:var(--mv179-y,0px)!important;
    right:auto!important;bottom:auto!important;transform:none!important;
    align-items:center!important;justify-content:center!important;
    width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;
    margin:0!important;padding:0!important;z-index:2147483100!important;
    background:transparent!important;border:0!important;border-radius:0!important;
    box-shadow:none!important;color:#fff!important;opacity:.94!important;
    cursor:pointer!important;pointer-events:auto!important;
  }
  html body dialog#viewer[open] > #photo-share svg {
    width:19px!important;height:19px!important;stroke-width:1.9!important;
    display:block!important;pointer-events:none!important;
  }
  html body dialog#viewer[open] > #photo-share:hover,
  html body dialog#viewer[open] > #photo-share:focus-visible {opacity:1!important}
  #viewer .viewer-photo-share-row:empty{display:none!important}
}
@media (max-width:700px), (pointer:coarse) {
  html body dialog#viewer[open] > #photo-share{display:none!important}
}
/* A small in-viewer sharing menu, usable with desktop browsers without navigator.share. */
html body dialog#viewer[open] > #mv179-menu {
  position:absolute!important;left:var(--mv179-menu-x,0px)!important;
  top:var(--mv179-menu-y,0px)!important;
  z-index:2147483200!important;display:grid!important;gap:2px!important;
  width:196px!important;box-sizing:border-box!important;padding:8px!important;
  background:rgba(19,19,19,.97)!important;
  color:#fff!important;border:1px solid rgba(255,255,255,.22)!important;
  border-radius:9px!important;box-shadow:0 10px 30px rgba(0,0,0,.5)!important;
  backdrop-filter:blur(10px)!important;
}
html body dialog#viewer[open] > #mv179-menu[hidden]{display:none!important}
html body #mv179-menu a, html body #mv179-menu button {
  display:flex!important;align-items:center!important;justify-content:flex-start!important;
  width:100%!important;box-sizing:border-box!important;min-height:32px!important;
  margin:0!important;padding:6px 10px!important;
  font:12px/1.3 inherit!important;text-align:left!important;text-decoration:none!important;
  color:#f6f6f6!important;background:transparent!important;
  border:0!important;border-radius:4px!important;box-shadow:none!important;
  cursor:pointer!important;white-space:nowrap!important;
}
html body #mv179-menu a:hover,html body #mv179-menu button:hover {
  background:rgba(255,255,255,.13)!important;
}
html body #mv179-menu .mv179-status{
  min-height:0!important;margin:2px 4px 0!important;
  font-size:11px!important;color:#ddd!important;
}


/* Desktop portraits only: put the close control OUTSIDE the actual image edge. */
@media (min-width:1001px) and (pointer:fine) {
 html body dialog#viewer[open].monolit-portrait:not(.showing-details):not(.zoomed) > .bar #close {
   position:fixed!important;
   left:var(--mv180-portrait-close-x,50vw)!important;
   top:var(--mv180-portrait-close-y,10vh)!important;
   right:auto!important;bottom:auto!important;transform:none!important;
   z-index:2147483646!important;display:inline-flex!important;
   visibility:visible!important;opacity:1!important;pointer-events:auto!important;
 }
}


/* Desktop share icon is always completely borderless, including focus and active states. */
@media (min-width:701px) and (pointer:fine) {
  html body dialog#viewer[open] > #photo-share,
  html body dialog#viewer[open] > #photo-share:hover,
  html body dialog#viewer[open] > #photo-share:focus,
  html body dialog#viewer[open] > #photo-share:focus-visible,
  html body dialog#viewer[open] > #photo-share:active,
  html body dialog#viewer[open] .viewer-photo-share-row #photo-share,
  html body dialog#viewer[open] .viewer-photo-share-row #photo-share:focus-visible {
    border:0!important;outline:0!important;box-shadow:none!important;
    background:transparent!important;border-radius:0!important;
    text-decoration:none!important;-webkit-tap-highlight-color:transparent!important;
  }
}


/* In landscape on phones: no share icon and no height reserved for it. */
@media (orientation:landscape) and (pointer:coarse) and (max-height:650px) {
  html body dialog#viewer[open] #monolit-mobile-fit .mv107-stack #mv177-photo-share,
  html body dialog#viewer[open] #monolit-mobile-fit #mv177-photo-share {
    display:none!important;visibility:hidden!important;pointer-events:none!important;
  }
}
