/* Local mirror fixes for missing WordPress plugin assets. */
img {
  max-width: 100%;
}

.slideshow_container {
  width: 100%;
  height: auto !important;
  min-height: 280px;
  overflow: hidden;
  background: #111;
}

.slideshow_content {
  display: block !important;
}

.slideshow_view {
  display: none;
}

.slideshow_view:first-child {
  display: block;
}

.slideshow_slide img {
  display: block;
  width: 100%;
  min-height: 280px;
  max-height: 520px;
  object-fit: cover;
}

.vc_row:before,
.vc_row:after,
.vc_clearfix:before,
.vc_clearfix:after {
  display: table;
  content: " ";
}

.vc_row:after,
.vc_clearfix:after {
  clear: both;
}

.vc_grid .vc_pageable-slide-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 2%;
}

.vc_grid-item {
  flex: 0 0 31.333%;
  float: none !important;
  width: 31.333%;
  margin: 0 0 24px;
}

.vc_grid-item-mini {
  height: 100%;
  background: #fff;
  border: 1px solid #ddd;
}

.vc_single_image-wrapper,
.vc_single_image-img {
  display: block;
  width: 100%;
}

.vc_single_image-img {
  height: 150px;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.vc_custom_heading a {
  color: #fff;
  text-decoration: none;
}

#sb_instagram {
  clear: both;
  margin: 18px 0;
}

#sb_instagram #sbi_images {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

#sb_instagram .sbi_item,
#sb_instagram .sbi_photo_wrap,
#sb_instagram .sbi_photo {
  width: 100% !important;
}

#sb_instagram .sbi_photo {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: #f3f7f9;
  background-size: cover !important;
  background-position: center !important;
}

#sb_instagram svg,
#sb_instagram .sbi_new_logo {
  width: 28px !important;
  height: 28px !important;
  max-width: 28px !important;
  max-height: 28px !important;
}

#sb_instagram img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#sb_instagram .sbi_photo > *:not(img):not(svg),
#sb_instagram .sbi_link,
#sb_instagram .sbi_caption_wrap {
  display: none !important;
}

#owl-demo .item img {
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
}

.local-booking-fallback {
  display: grid;
  gap: 8px;
  padding: 12px;
  background: #f5f5f5;
}

.local-booking-fallback a {
  display: block;
  padding: 9px 10px;
  color: #fff;
  text-align: center;
  text-decoration: none;
  background: #008fc4;
}

@media (max-width: 768px) {
  .vc_grid .vc_pageable-slide-wrapper,
  #sb_instagram #sbi_images {
    display: block;
  }

  .vc_grid-item {
    flex-basis: 100%;
    width: 100%;
  }

  #sb_instagram .sbi_item {
    margin-bottom: 8px;
  }
}
