.elementor-1702 .elementor-element.elementor-element-7662053f{--display:flex;}.elementor-1702 .elementor-element.elementor-element-46c8352{--divider-border-style:solid;--divider-color:#00000000;--divider-border-width:1px;}.elementor-1702 .elementor-element.elementor-element-46c8352 .elementor-divider-separator{width:100%;}.elementor-1702 .elementor-element.elementor-element-46c8352 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}/* Start custom CSS for shortcode, class: .elementor-element-7d7d686 *//* HILANGKAN TEXT REQUIRED */
.mphb_sc_search-form .mphb-required-fields-tip {
  display: none;
}

/* CONTAINER UTAMA */
.mphb_sc_search-form {
  display: flex;
  gap: 15px;
  align-items: flex-end;
  flex-wrap: wrap;

  background: #ffffff;
  padding: 20px;
  border-radius: 12px;

  box-shadow: 0 8px 25px rgba(0,0,0,0.08);
  border: 1px solid #f1f1f1;
}

/* FIELD WRAPPER */
.mphb_sc_search-form p {
  flex: 1;
  margin-bottom: 0;

  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

/* INPUT & SELECT */
.mphb_sc_search-form input,
.mphb_sc_search-form select {
  height: 48px;
  border-radius: 8px;
  border: 1px solid #e5e5e5;
  padding: 0 12px;
  background: #fafafa;
  transition: all 0.2s ease;
  width: 100%;
}

/* FOCUS */
.mphb_sc_search-form input:focus,
.mphb_sc_search-form select:focus {
  border-color: #999;
  background: #fff;
  outline: none;
}

/* KHUSUS BUTTON WRAPPER */
.mphb_sc_search-form p:last-child {
  flex: 0 0 auto;
  display: flex;
  align-items: flex-end;
}

/* BUTTON (SUPPORT SEMUA) */
.mphb_sc_search-form button,
.mphb_sc_search-form input[type="submit"] {
  background: #000 !important;
  color: #fff !important;
  border-radius: 8px;
  padding: 12px 24px;
  height: 48px;

  display: flex;
  align-items: center;
  justify-content: center;

  min-width: 120px;
  border: none;
  cursor: pointer;
  transition: all 0.2s ease;
}

/* HOVER  */
.mphb_sc_search-form button:hover,
.mphb_sc_search-form input[type="submit"]:hover {
  background: #ff7a00 !important;
  color: #fff !important;
  border: none !important;
}

/* RESPONSIVE */
@media (max-width: 768px) {
  .mphb_sc_search-form {
    flex-direction: column;
    align-items: stretch;
  }

  .mphb_sc_search-form p {
    width: 100%;
  }

  .mphb_sc_search-form p:last-child {
    width: 100%;
  }

  .mphb_sc_search-form button,
  .mphb_sc_search-form input[type="submit"] {
    width: 100%;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-26d9251e *//* =========================
   GLOBAL SAFE WIDTH
========================= */
html, body {
    overflow-x: hidden !important;
}

.site,
.site-content,
.site-main,
.content-area,
#primary,
#content,
#main,
.container,
.ast-container,
.page-content,
.entry-content,
.elementor,
.elementor-section,
.elementor-container,
.elementor-widget,
.elementor-widget-container {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* wrapper utama */
.mphb_sc_rooms-wrapper,
.mphb_sc_search_results-wrapper,
.mphb-room-types {
    width: 100% !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
    box-sizing: border-box !important;
}

/* =========================
   CARD ROOM / VILLA
========================= */
.mphb-room-type,
.type-mphb_room_type,
.mphb_loop_room_type,
.mphb_sc_rooms-wrapper article,
.mphb_sc_search_results-wrapper article {
    background: #fff !important;
    border-radius: 24px !important;
    padding: 18px 18px 28px !important;
    margin-bottom: 34px !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.06) !important;
    overflow: hidden !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* =========================
   IMAGE / GALLERY FIX
========================= */
.mphb-room-type-images,
.mphb-room-type-gallery,
.mphb-room-type-gallery-wrapper,
.mphb-flexslider-gallery-wrapper,
.mphb-room-type-featured-image,
.type-mphb_room_type .gallery,
.type-mphb_room_type .post-thumbnail,
.type-mphb_room_type .entry-image {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: auto !important;
    height: auto !important;
    line-height: 0 !important;
}

.flexslider,
.mphb-flexslider,
.mphb-room-type-gallery-wrapper .flexslider,
.mphb-flexslider-gallery-wrapper .flexslider {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: auto !important;
    height: auto !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

.flexslider .slides,
.mphb-flexslider .slides {
    margin: 0 !important;
    padding: 0 !important;
    height: auto !important;
    list-style: none !important;
}

.flexslider .slides > li,
.mphb-flexslider .slides > li {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    height: auto !important;
    line-height: 0 !important;
}

.mphb-room-type-images img,
.mphb-room-type-gallery img,
.mphb-room-type-featured-image img,
.type-mphb_room_type .gallery img,
.type-mphb_room_type .post-thumbnail img,
.type-mphb_room_type .entry-image img,
.type-mphb_room_type .wp-post-image,
.type-mphb_room_type .attachment-post-thumbnail,
.flexslider .slides img,
.mphb-flexslider .slides img {
    display: block !important;
    width: 100% !important;
    height: 380px !important;
    object-fit: cover !important;
    object-position: center !important;
    border-radius: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* =========================
   HILANGKAN THUMBNAIL & ARROW
========================= */
.mphb-gallery-thumbnail-slider,
.mphb-gallery-thumbnails-slider,
.flexslider.mphb-gallery-thumbnail-slider,
.mphb-room-type .mphb-gallery-thumbnail-slider,
.type-mphb_room_type .mphb-gallery-thumbnail-slider {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

.flex-direction-nav,
.flex-control-nav,
.mphb-gallery-thumbnail-slider .flex-direction-nav,
.mphb-gallery-thumbnails-slider .flex-direction-nav {
    display: none !important;
}

/* =========================
   CONTENT WRAPPER FIX
   JARAK GAMBAR -> KONTEN = 100PX
========================= */
.mphb-room-type-content,
.type-mphb_room_type .entry-content,
.type-mphb_room_type .mphb-room-type-content {
    margin: 120px 0 0 !important;
    padding: 0 !important;
}

/* force wrapper tema/plugin */
.type-mphb_room_type .entry-header,
.type-mphb_room_type header {
    margin-top: 100px !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
}

/* element pertama setelah gambar */
.type-mphb_room_type .entry-content > *:first-child,
.mphb-room-type-content > *:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* =========================
   TITLE
========================= */
.mphb-room-type-title,
.entry-title,
.type-mphb_room_type h2,
.type-mphb_room_type h3:first-of-type,
.type-mphb_room_type .entry-title,
.type-mphb_room_type .mphb-room-type-title {
    font-size: 32px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    color: #111 !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
}

/* =========================
   DESCRIPTION
========================= */
.mphb-room-type-description,
.type-mphb_room_type .mphb-room-type-description,
.type-mphb_room_type .mphb-room-type-content > p {
    font-size: 16px !important;
    line-height: 1.9 !important;
    color: #555 !important;
    margin: 0 0 24px !important;
    max-width: 920px !important;
}

.type-mphb_room_type .mphb-room-type-content p,
.type-mphb_room_type .entry-content p {
    margin-top: 0 !important;
    margin-bottom: 24px !important;
}

/* =========================
   DETAIL TITLE
========================= */
.mphb-room-type-details-title,
.type-mphb_room_type .mphb-room-type-content h3,
.type-mphb_room_type .entry-content h3 {
    font-size: 24px !important;
    font-weight: 700 !important;
    margin: 26px 0 14px !important;
    color: #111 !important;
    line-height: 1.3 !important;
}

/* =========================
   DETAIL LIST
========================= */
.mphb-room-type-attributes,
.mphb-room-type-details ul,
.type-mphb_room_type .mphb-room-type-content ul,
.type-mphb_room_type .entry-content ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 24px !important;
}

.mphb-room-type-attributes li,
.mphb-room-type-details li,
.type-mphb_room_type .mphb-room-type-content li,
.type-mphb_room_type .entry-content li {
    font-size: 16px !important;
    color: #444 !important;
    margin-bottom: 10px !important;
    padding-left: 18px !important;
    position: relative !important;
    line-height: 1.8 !important;
}

.mphb-room-type-attributes li::before,
.mphb-room-type-details li::before,
.type-mphb_room_type .mphb-room-type-content li::before,
.type-mphb_room_type .entry-content li::before {
    content: "•" !important;
    color: #c89b3c !important;
    font-size: 18px !important;
    font-weight: bold !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
}

/* =========================
   BUTTONS
========================= */
.type-mphb_room_type .mphb-view-details-button-wrapper,
.type-mphb_room_type .mphb-to-book-btn-wrapper,
.mphb-room-type-view-details-button-wrapper,
.mphb-room-type-book-button-wrapper,
.mphb-view-details-button-wrapper,
.mphb-to-book-btn-wrapper {
    display: inline-block !important;
    vertical-align: top !important;
    margin-right: 12px !important;
    margin-top: 16px !important;
}

.mphb-view-details-button,
.mphb-book-button,
.type-mphb_room_type .button,
.type-mphb_room_type a.button,
button,
a.button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 170px !important;
    height: 52px !important;
    padding: 0 24px !important;
    border-radius: 14px !important;
    background: #111 !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    border: none !important;
    box-shadow: none !important;
    transition: all 0.3s ease !important;
}

.mphb-view-details-button:hover,
.mphb-book-button:hover,
.type-mphb_room_type .button:hover,
.type-mphb_room_type a.button:hover,
button:hover,
a.button:hover {
    background: #c89b3c !important;
    color: #fff !important;
    transform: translateY(-2px) !important;
}

/* =========================
   CLEAN EXTRA SPACING
========================= */
.type-mphb_room_type .entry-content,
.mphb-room-type-content,
.mphb_sc_rooms-wrapper article,
.mphb_sc_search_results-wrapper article {
    padding: 0 !important;
}

.type-mphb_room_type br {
    display: initial !important;
}

/* =========================
   TABLET
========================= */
@media (max-width: 991px) {
    .mphb-room-type,
    .type-mphb_room_type,
    .mphb_loop_room_type {
        padding: 18px !important;
    }

    .mphb-room-type-images img,
    .mphb-room-type-gallery img,
    .mphb-room-type-featured-image img,
    .flexslider .slides img,
    .mphb-flexslider .slides img {
        height: 300px !important;
    }

    .mphb-room-type-content,
    .type-mphb_room_type .entry-content,
    .type-mphb_room_type .mphb-room-type-content,
    .type-mphb_room_type .entry-header,
    .type-mphb_room_type header {
        margin-top: 70px !important;
    }

    .mphb-room-type-title,
    .entry-title,
    .type-mphb_room_type h2,
    .type-mphb_room_type h3:first-of-type {
        font-size: 28px !important;
    }
}

/* =========================
   MOBILE
========================= */
@media (max-width: 767px) {
    .mphb_sc_rooms-wrapper,
    .mphb_sc_search_results-wrapper,
    .mphb-room-types {
        padding: 0 14px !important;
    }

    .mphb-room-type,
    .type-mphb_room_type,
    .mphb_loop_room_type {
        border-radius: 20px !important;
        padding: 16px !important;
    }

    .mphb-room-type-images img,
    .mphb-room-type-gallery img,
    .mphb-room-type-featured-image img,
    .flexslider .slides img,
    .mphb-flexslider .slides img {
        height: 220px !important;
        border-radius: 16px !important;
    }

    .mphb-room-type-content,
    .type-mphb_room_type .entry-content,
    .type-mphb_room_type .mphb-room-type-content,
    .type-mphb_room_type .entry-header,
    .type-mphb_room_type header {
        margin-top: 42px !important;
    }

    .mphb-room-type-title,
    .entry-title,
    .type-mphb_room_type h2,
    .type-mphb_room_type h3:first-of-type {
        font-size: 24px !important;
        margin-bottom: 12px !important;
    }

    .mphb-room-type-description,
    .type-mphb_room_type .mphb-room-type-description,
    .type-mphb_room_type .mphb-room-type-content > p,
    .type-mphb_room_type .entry-content p {
        font-size: 15px !important;
        line-height: 1.8 !important;
    }

    .type-mphb_room_type .mphb-view-details-button-wrapper,
    .type-mphb_room_type .mphb-to-book-btn-wrapper,
    .mphb-room-type-view-details-button-wrapper,
    .mphb-room-type-book-button-wrapper,
    .mphb-view-details-button-wrapper,
    .mphb-to-book-btn-wrapper {
        display: block !important;
        width: 100% !important;
        margin-right: 0 !important;
        margin-bottom: 10px !important;
    }

    .mphb-view-details-button,
    .mphb-book-button,
    .type-mphb_room_type .button,
    .type-mphb_room_type a.button,
    button,
    a.button {
        width: 100% !important;
        min-width: 100% !important;
    }
}
/* =========================================
   FORCE JARAK GAMBAR -> KONTEN (PAS)
========================================= */

/* desktop */
.type-mphb_room_type .mphb-room-type-images,
.type-mphb_room_type .mphb-room-type-gallery,
.type-mphb_room_type .mphb-room-type-gallery-wrapper,
.type-mphb_room_type .mphb-flexslider-gallery-wrapper,
.type-mphb_room_type .mphb-room-type-featured-image,
.type-mphb_room_type .post-thumbnail,
.type-mphb_room_type .entry-image,
.type-mphb_room_type .flexslider,
.type-mphb_room_type .mphb-flexslider {
    margin-bottom: 50px !important;
}

/* reset wrapper konten */
.type-mphb_room_type .entry-header,
.type-mphb_room_type .entry-content,
.type-mphb_room_type .mphb-room-type-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* judul */
.type-mphb_room_type .entry-title,
.type-mphb_room_type .mphb-room-type-title,
.type-mphb_room_type h2 {
    margin-top: 0 !important;
}

/* tablet */
@media (max-width: 991px) {
    .type-mphb_room_type .mphb-room-type-images,
    .type-mphb_room_type .mphb-room-type-gallery,
    .type-mphb_room_type .mphb-room-type-gallery-wrapper,
    .type-mphb_room_type .mphb-flexslider-gallery-wrapper,
    .type-mphb_room_type .mphb-room-type-featured-image,
    .type-mphb_room_type .post-thumbnail,
    .type-mphb_room_type .entry-image,
    .type-mphb_room_type .flexslider,
    .type-mphb_room_type .mphb-flexslider {
        margin-bottom: 38px !important;
    }
}

/* mobile */
@media (max-width: 767px) {
    .type-mphb_room_type .mphb-room-type-images,
    .type-mphb_room_type .mphb-room-type-gallery,
    .type-mphb_room_type .mphb-room-type-gallery-wrapper,
    .type-mphb_room_type .mphb-flexslider-gallery-wrapper,
    .type-mphb_room_type .mphb-room-type-featured-image,
    .type-mphb_room_type .post-thumbnail,
    .type-mphb_room_type .entry-image,
    .type-mphb_room_type .flexslider,
    .type-mphb_room_type .mphb-flexslider {
        margin-bottom: 26px !important;
    }
}/* End custom CSS */