/* Bulk & Partner V31 – video tabs, play button and balanced section spacing, Classic detail. */
.single-property #overview > .rh_property__video {
    padding: 24px 25px 24px;
    margin: 0;
    border-bottom: 0;
}
.single-property #overview .rh_property__video > .rh_property__heading {
    margin: 0 0 15px;
}
.single-property #overview .bp-property-video__tabs {
    display: flex;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 5px;
    margin: 0 0 14px;
    padding: 0;
    border-bottom: 1px solid #dedede;
}
.single-property #overview .bp-property-video__tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    min-width: 105px;
    padding: 9px 18px;
    margin: 0 0 -1px;
    border: 1px solid transparent;
    border-bottom: 2px solid transparent;
    border-radius: 0;
    background: #fff;
    color: #394041;
    font: inherit;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.3;
    cursor: pointer;
    box-shadow: none;
    text-decoration: none;
    transition: border-color .15s ease, color .15s ease;
}
.single-property #overview .bp-property-video__tab:hover,
.single-property #overview .bp-property-video__tab:focus-visible {
    background: #fff;
    color: #394041;
    border-color: #e38b0d;
    outline-offset: 2px;
}
.single-property #overview .bp-property-video__tab.is-active,
.single-property #overview .bp-property-video__tab[aria-selected="true"] {
    color: #394041;
    background: #fff;
    border-bottom-color: #e38b0d;
}
.single-property #overview .bp-property-video__panel[hidden] { display: none !important; }
.single-property #overview .bp-property-video__panel { margin: 0; padding: 0; }
.single-property #overview .bp-property-video__panel img,
.single-property #overview .rh_property__video .rh_property_video img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0;
}
/* Keep the preview image IN document flow. Without a block-level video link,
 * the old inline <a> can collapse its parent: the image then overflows into
 * the next section and the play icon uses the wrong centering reference. */
.single-property #overview .rh_property__video .rh_property_video_inner {
    position: relative;
    display: flow-root;
}
.single-property #overview .rh_property__video .bp-property-video__trigger {
    display: inline-block;
    vertical-align: top;
    position: relative;
    max-width: 100%;
    line-height: 0;
    text-decoration: none;
}
.single-property #overview .rh_property__video .bp-property-video__trigger .play-btn {
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    margin: 0;
    transform: translate(-50%, -50%);
    width: 74px;
    height: 74px;
    z-index: 2;
    pointer-events: none;
}
/* V30: the sections are siblings in #overview, not in a card/slider wrapper.
 * No adjacency dependence: floor plans -> video -> tour -> map, with any
 * optional section omitted, maintain consistent breathing room. */
.single-property #overview > .property-virtual-tour {
    box-sizing: border-box;
    padding: 24px 25px 24px;
    margin: 0;
    border-bottom: 0;
}
#overview > .property-virtual-tour > .rh_property__heading {
    margin: 0 0 18px;
    padding: 0;
}
#overview > .property-virtual-tour > iframe {
    display: block;
    width: 100%;
    max-width: 100%;
    border: 0;
}
/* Do not override iframe height or internal layouts from WP VR Pro. */
.single-property #overview > .map-wrap {
    padding-top: 24px;
}
@media (max-width: 767px) {
    .single-property #overview > .rh_property__video { padding: 20px; }
    .single-property #overview > .property-virtual-tour { padding: 20px; }
    .single-property #overview > .map-wrap { padding-top: 20px; }
    .single-property #overview .bp-property-video__tab {
        min-width: 90px;
        padding: 9px 14px;
    }
    #overview > .property-virtual-tour > iframe {
        height: auto;
        aspect-ratio: 16 / 9;
        min-height: 240px;
    }
}

/* V32 – Tour tabs mirror video tabs; NO overrides to V31 section spacing. */
.single-property #overview .bp-property-tour__tabs {
    display:flex; align-items:flex-end; flex-wrap:wrap; gap:5px;
    margin:0 0 14px; padding:0; border-bottom:1px solid #dedede;
}
.single-property #overview .bp-property-tour__tab {
    display:inline-flex; align-items:center; justify-content:center;
    min-height:42px; min-width:105px; padding:9px 18px; margin:0 0 -1px;
    border:1px solid transparent; border-bottom:2px solid transparent;
    border-radius:0; background:#fff; color:#394041;
    font:inherit; font-size:13px; font-weight:600; line-height:1.3;
    cursor:pointer; box-shadow:none; text-decoration:none;
    transition:border-color .15s ease, color .15s ease;
}
.single-property #overview .bp-property-tour__tab:hover,
.single-property #overview .bp-property-tour__tab:focus-visible {
    background:#fff; color:#394041; border-color:#e38b0d; outline-offset:2px;
}
.single-property #overview .bp-property-tour__tab.is-active,
.single-property #overview .bp-property-tour__tab[aria-selected="true"] {
    background:#fff; color:#394041; border-bottom-color:#e38b0d;
}
.single-property #overview .bp-property-tour__panel[hidden] { display:none !important; }
.single-property #overview .bp-property-tour__panel { padding:0; margin:0; }
.single-property #overview .bp-property-tour__panel > iframe { display:block; width:100%; max-width:100%; border:0; }
@media (max-width:767px) {
    .single-property #overview .bp-property-tour__tab { min-width:90px; padding:9px 14px; }
    .single-property #overview .bp-property-tour__panel > iframe { height:auto; aspect-ratio:16/9; min-height:240px; }
}
