/* Layout helpers. Builder JS used to rewrite inline image widths to the viewport. */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
hh-image, hh-iframe, hh-media-canvas {
  display: block;
  width: 100%;
  height: 100%;
}
[data-hide-prejs] { visibility: visible !important; }
[data-animate-blur] img { filter: none !important; }

body.hh-mobile [data-undisplayed="true"] {
  display: none !important;
}

/* Mobile canvas is 320px. Scale it to the phone (transform, not zoom —
   Safari ignores CSS zoom so the previous pass looked like a no-op on iPhone). */
body.hh-mobile {
  overflow-x: hidden !important;
  width: 100% !important;
  min-width: 0 !important;
  touch-action: pan-y;
}
body.hh-mobile #hh-root {
  overflow-x: hidden !important;
  overflow-y: visible !important;
}
body.hh-mobile #hh-site {
  width: 320px !important;
  max-width: 320px !important;
  left: 0 !important;
  margin-left: 0 !important;
  transform: scale(var(--hh-m-scale, 1));
  transform-origin: top left;
  -webkit-transform: scale(var(--hh-m-scale, 1));
  -webkit-transform-origin: top left;
}

body.hh-mobile #hh-menu:not([data-undisplayed="true"]) {
  visibility: visible !important;
}

body.hh-mobile #hh-qab.hh-qab-host {
  position: fixed !important;
  left: 3.75vw !important;
  right: 3.75vw !important;
  width: auto !important;
  bottom: 0 !important;
  z-index: 2147483646 !important;
  transform: none !important;
  zoom: 1 !important;
}

body:not(.hh-mobile) #comp-jrvx7ms4,
body:not(.hh-mobile) #comp-jrvx7ms4 [data-has-ssr-src],
body:not(.hh-mobile) #comp-livzds7y {
  width: 100% !important;
  left: 0 !important;
  margin-left: 0 !important;
}

body:not(.hh-mobile) #comp-jrvx7ms4 img {
  width: 100% !important;
  max-width: none !important;
  height: 1010px !important;
  object-fit: cover !important;
  object-position: 50% 50% !important;
}

body:not(.hh-mobile) #img_comp-lmrwsoiv img,
body:not(.hh-mobile) #comp-lmrwsoiv img {
  width: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
}

/* Gallery Load more — clip + button. */
.hh-gallery .show-more-container {
  text-align: center;
  line-height: 138px;
  height: 138px;
  position: relative;
  z-index: 2;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff 45%);
  margin-top: -138px;
}
.hh-gallery .show-more-container button.show-more {
  display: inline-block;
  cursor: pointer;
  line-height: normal;
  padding: 12px 36px !important;
  border-radius: 0 !important;
  border: 1px solid rgb(33, 33, 33) !important;
  background: #fff !important;
  color: rgba(33, 33, 33, 0.9) !important;
  font: normal normal normal 18px/1.4em arial, helvetica, sans-serif !important;
}
.hh-gallery .show-more-container button.show-more:hover {
  background: rgba(0, 0, 0, 0.06);
}

#comp-lmte2tzz,
#comp-js1vdka4 {
  display: block !important;
  position: relative !important;
  overflow: hidden;
}
#mapContainer_comp-lmte2tzz,
#mapContainer_comp-js1vdka4,
#hh-map,
#hh-map.leaflet-container {
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 320px;
  background: #e7eee6;
}
.hh-pin { background: transparent !important; border: none !important; }
.hh-pop strong { color: #527460; display: block; font-size: 15px; }
.hh-pop span { font-size: 13px; color: #575555; }

a.hh-fb {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  margin-left: 10px;
  vertical-align: middle;
  text-decoration: none;
}
a.hh-fb svg { display: block; width: 28px; height: 28px; }
a.hh-fb:hover { opacity: 0.85; }
#hh-header { position: relative; }
#hh-fb-header {
  position: absolute;
  z-index: 20;
  right: 210px;
  top: 50%;
  transform: translateY(-50%);
  margin: 0;
}
body.hh-mobile #hh-fb-header {
  right: 52px;
  top: 18px;
  transform: none;
  width: 32px;
  height: 32px;
}
body.hh-mobile #hh-fb-header svg { width: 26px; height: 26px; }
#hh-fb-footer {
  position: relative;
  top: 2px;
}
#hh-qab a.hh-fb-qab {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #fff;
  text-decoration: none;
  padding: 6px 10px;
}
#hh-qab a.hh-fb-qab svg { width: 22px; height: 22px; }
#hh-qab a.hh-fb-qab span { font-size: 11px; line-height: 1.2; margin-top: 2px; }
