/* BPP Public Profiles V5.4 — locked reference rebuild */
:root{
    --bpp54-green:#07964f;
    --bpp54-green-dark:#006a45;
    --bpp54-ink:#17251d;
    --bpp54-muted:#6e7b74;
    --bpp54-line:#dce7e1;
    --bpp54-soft:#f4f8f6;
    --bpp54-header-offset:0px;
}
body:has(.bpp54){
    background:#f4f8f6!important;
}
body:has(.bpp54) .flat-title-page.style-2,
body:has(.bpp54) .rpg-market-announcement{
    display:none!important;
}

/* Do NOT reposition the site's global header here.
   The existing rpg-global-sticky-v2-2 system already owns it. */

.bpp54{
    width:100vw!important;
    max-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    background:#f4f8f6!important;
    color:var(--bpp54-ink)!important;
    font-family:"DM Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
.bpp54 *{box-sizing:border-box!important}
.bpp54 a{text-decoration:none!important}
.bpp54-container{
    width:calc(100% - 48px)!important;
    max-width:1460px!important;
    margin:0 auto!important;
}

.bpp54-private-preview{
    background:#fff4d6!important;
    border-bottom:1px solid #ead49b!important;
}
.bpp54-private-preview .bpp54-container{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:16px!important;
    padding:10px 0!important;
}
.bpp54-private-preview strong,.bpp54-private-preview span{display:block!important}
.bpp54-private-preview strong{font-size:12px!important}
.bpp54-private-preview span{font-size:11px!important;color:#766847!important}
.bpp54-private-preview a{
    padding:8px 12px!important;
    border-radius:7px!important;
    background:#17251d!important;
    color:#fff!important;
    font-size:11px!important;
    font-weight:800!important;
}

.bpp54-breadcrumb-bar{
    background:#fff!important;
    border-bottom:1px solid #eef3f0!important;
}
.bpp54-breadcrumbs{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    min-height:38px!important;
    color:#526159!important;
    font-size:11px!important;
}
.bpp54-breadcrumbs a{color:#34483d!important}

.bpp54-hero{
    position:relative!important;
    min-height:190px!important;
    background-position:center!important;
    background-size:cover!important;
    overflow:visible!important;
}
.bpp54-developer-hero{background-color:#bfd7cc!important}
.bpp54-owner-hero{background-color:#c8ddd4!important}
.bpp54-hero>.bpp54-container{
    position:relative!important;
    min-height:190px!important;
}
.bpp54-hero-copy{
    position:absolute!important;
    right:10px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    width:min(370px,42%)!important;
    text-align:right!important;
    color:#fff!important;
    text-shadow:0 1px 3px rgba(0,0,0,.14)!important;
}
.bpp54-hero-copy>strong{
    display:block!important;
    margin-bottom:5px!important;
    font-size:10px!important;
    font-weight:800!important;
    letter-spacing:.09em!important;
}
.bpp54-hero-copy h1{
    margin:0 0 6px!important;
    color:#fff!important;
    font-family:"Josefin Sans","DM Sans",sans-serif!important;
    font-size:40px!important;
    line-height:.93!important;
    font-weight:700!important;
}
.bpp54-hero-copy p{
    margin:0!important;
    color:#fff!important;
    font-size:12px!important;
}
.bpp54-owner-hero-copy{
    position:absolute!important;
    right:14px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    max-width:400px!important;
    color:#fff!important;
    text-align:right!important;
}
.bpp54-owner-hero-copy strong{
    display:block!important;
    font-family:"Josefin Sans","DM Sans",sans-serif!important;
    font-size:28px!important;
    line-height:1.05!important;
    font-weight:700!important;
}
.bpp54-owner-hero-copy p{margin:5px 0 0!important;font-size:12px!important}

.bpp54-profile-strip{
    background:#fff!important;
    border-bottom:1px solid var(--bpp54-line)!important;
}
.bpp54-profile-row{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:22px!important;
    padding:14px 0 12px!important;
}
.bpp54-identity{
    display:flex!important;
    align-items:center!important;
    gap:16px!important;
    min-width:0!important;
}
.bpp54-avatar{
    display:grid!important;
    place-items:center!important;
    flex:0 0 auto!important;
    width:112px!important;
    height:112px!important;
    margin-top:-56px!important;
    border:5px solid #fff!important;
    border-radius:50%!important;
    background:var(--bpp54-green)!important;
    box-shadow:0 8px 24px rgba(6,67,43,.16)!important;
    overflow:hidden!important;
    color:#fff!important;
    font-size:38px!important;
    font-weight:900!important;
}
.bpp54-company-avatar{
    border-radius:18px!important;
    background:#fff!important;
    color:#087747!important;
}
.bpp54-avatar img{width:100%!important;height:100%!important;object-fit:cover!important}
.bpp54-role{
    display:block!important;
    color:#087747!important;
    font-size:11px!important;
    font-weight:800!important;
}
.bpp54-name-row{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    flex-wrap:wrap!important;
}
.bpp54-name-row h2{
    margin:2px 0!important;
    color:var(--bpp54-ink)!important;
    font-family:"DM Sans",sans-serif!important;
    font-size:29px!important;
    line-height:1.05!important;
    font-weight:800!important;
}
.bpp54-verified{
    padding:4px 8px!important;
    border-radius:999px!important;
    background:#e3f7ec!important;
    color:#087747!important;
    font-size:9px!important;
    font-weight:800!important;
}
.bpp54-identity-copy>p{margin:0!important;color:#718078!important;font-size:11px!important}
.bpp54-meta{
    display:flex!important;
    gap:14px!important;
    flex-wrap:wrap!important;
    margin-top:6px!important;
    color:#64736b!important;
    font-size:11px!important;
}
.bpp54-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:7px!important;
    flex-wrap:wrap!important;
}
.bpp54-actions a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:38px!important;
    padding:0 13px!important;
    border:1px solid #cdd9d3!important;
    border-radius:6px!important;
    background:#fff!important;
    color:#21342a!important;
    font-size:11px!important;
    font-weight:800!important;
}
.bpp54-actions a.primary{
    background:var(--bpp54-green)!important;
    border-color:var(--bpp54-green)!important;
    color:#fff!important;
}
.bpp54-actions a.whatsapp{
    border-color:var(--bpp54-green)!important;
    color:#087747!important;
}

.bpp54-top-kpis,.bpp54-summary{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:10px!important;
}
.bpp54-top-kpis{padding:0 0 14px!important}
.bpp54-top-kpis>div,.bpp54-summary>div{
    display:grid!important;
    grid-template-columns:auto 1fr!important;
    grid-template-rows:auto auto!important;
    align-items:center!important;
    column-gap:10px!important;
    min-height:62px!important;
    padding:10px 13px!important;
    border-radius:9px!important;
    background:linear-gradient(135deg,#f4faf7,#edf7f2)!important;
}
.bpp54-top-kpis i,.bpp54-summary i{
    grid-row:1/3!important;
    display:grid!important;
    place-items:center!important;
    width:31px!important;
    height:31px!important;
    border-radius:8px!important;
    background:#dff5e9!important;
    color:#087747!important;
    font-style:normal!important;
    font-size:14px!important;
}
.bpp54-top-kpis strong,.bpp54-summary strong{
    font-size:18px!important;
    line-height:1!important;
    font-weight:800!important;
}
.bpp54-top-kpis span,.bpp54-summary span{
    color:#718078!important;
    font-size:10px!important;
    line-height:1.2!important;
}
.owner-top-kpis>div:first-child strong{font-size:14px!important}

.bpp54-tabs-shell{
    position:sticky!important;
    top:var(--bpp54-header-offset)!important;
    z-index:80!important;
    background:#fff!important;
    border-bottom:1px solid var(--bpp54-line)!important;
}
.bpp54-tabs{
    display:flex!important;
    align-items:center!important;
    gap:27px!important;
    overflow-x:auto!important;
    white-space:nowrap!important;
    scrollbar-width:none!important;
}
.bpp54-tabs::-webkit-scrollbar{display:none!important}
.bpp54-tabs a{
    position:relative!important;
    padding:12px 0!important;
    color:#55635b!important;
    font-size:11px!important;
    font-weight:700!important;
}
.bpp54-tabs a.active{color:#087747!important}
.bpp54-tabs a.active:after{
    content:""!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    height:2px!important;
    background:var(--bpp54-green)!important;
}

.bpp54-main{padding:14px 0 26px!important}
.bpp54-overview-grid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 300px!important;
    gap:12px!important;
}
.bpp54-card{
    padding:16px!important;
    border:1px solid var(--bpp54-line)!important;
    border-radius:11px!important;
    background:#fff!important;
}
.bpp54-card-title{
    display:flex!important;
    align-items:flex-start!important;
    gap:9px!important;
}
.bpp54-card-title i{
    display:grid!important;
    place-items:center!important;
    width:31px!important;
    height:31px!important;
    border-radius:7px!important;
    background:#e3f7ec!important;
    color:#087747!important;
    font-style:normal!important;
    font-size:13px!important;
}
.bpp54-card-title h3{
    margin:0!important;
    color:var(--bpp54-ink)!important;
    font-family:"DM Sans",sans-serif!important;
    font-size:15px!important;
    line-height:1.2!important;
    font-weight:800!important;
}
.bpp54-card-title p{
    margin:2px 0 0!important;
    color:#7b8881!important;
    font-size:10px!important;
}
.bpp54-copy{
    margin:12px 0!important;
    color:#5b6861!important;
    font-size:12px!important;
    line-height:1.55!important;
}
.bpp54-feature-grid{
    display:grid!important;
    grid-template-columns:repeat(3,1fr)!important;
    gap:7px!important;
}
.bpp54-feature-grid.owner-features{grid-template-columns:repeat(2,1fr)!important}
.bpp54-feature-grid span{
    padding:9px!important;
    border-radius:7px!important;
    background:#f4f8f6!important;
    color:#526058!important;
    font-size:10px!important;
}
.bpp54-contact-card a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:36px!important;
    margin-top:7px!important;
    border:1px solid #ccd8d2!important;
    border-radius:6px!important;
    background:#fff!important;
    color:#20342a!important;
    font-size:10px!important;
    font-weight:800!important;
}
.bpp54-contact-card a.primary{
    background:var(--bpp54-green)!important;
    border-color:var(--bpp54-green)!important;
    color:#fff!important;
}

.bpp54-summary{margin:11px 0 0!important}
.bpp54-section{margin-top:16px!important}
.bpp54-section-heading{
    display:flex!important;
    align-items:flex-end!important;
    justify-content:space-between!important;
    gap:14px!important;
    margin-bottom:9px!important;
}
.bpp54-section-heading small{
    display:block!important;
    color:#087747!important;
    font-size:8px!important;
    font-weight:800!important;
    letter-spacing:.06em!important;
}
.bpp54-section-heading h2{
    margin:1px 0 0!important;
    color:var(--bpp54-ink)!important;
    font-family:"DM Sans",sans-serif!important;
    font-size:20px!important;
    line-height:1.1!important;
    font-weight:800!important;
}
.bpp54-section-heading>a{color:#087747!important;font-size:9px!important;font-weight:800!important}

.bpp54-development-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
}
.bpp54-development-card,.bpp54-property-card{
    overflow:hidden!important;
    border:1px solid var(--bpp54-line)!important;
    border-radius:10px!important;
    background:#fff!important;
}
.bpp54-development-card .media,.bpp54-property-card .media{
    position:relative!important;
    display:block!important;
    overflow:hidden!important;
    background:#eef4f1!important;
}
.bpp54-development-card .media{aspect-ratio:2.28/1!important}
.bpp54-property-card .media{aspect-ratio:1.95/1!important}
.bpp54-development-card img,.bpp54-property-card img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
}
.bpp54 .placeholder{
    display:grid!important;
    place-items:center!important;
    width:100%!important;
    height:100%!important;
    color:#9aa8a1!important;
    font-size:38px!important;
}
.bpp54 .status,.bpp54 .featured{
    position:absolute!important;
    top:9px!important;
    padding:5px 8px!important;
    border-radius:999px!important;
    background:#087747!important;
    color:#fff!important;
    font-size:8px!important;
    font-weight:800!important;
}
.bpp54 .status{left:9px!important}
.bpp54 .featured{right:9px!important}
.bpp54-development-card .details,.bpp54-property-card .details{padding:11px!important}
.bpp54-development-card h3,.bpp54-property-card h3{
    margin:0!important;
    font-family:"DM Sans",sans-serif!important;
    font-size:14px!important;
    line-height:1.2!important;
    font-weight:800!important;
}
.bpp54-development-card h3 a,.bpp54-property-card h3 a{color:var(--bpp54-ink)!important}
.bpp54-development-card p,.bpp54-property-card p{
    margin:4px 0!important;
    color:#6d7a73!important;
    font-size:10px!important;
    line-height:1.4!important;
}
.bpp54-development-card p.location,.bpp54-property-card p.location{color:#087747!important}
.bpp54-development-card .metric,.bpp54-development-card .starting{
    display:flex!important;
    justify-content:space-between!important;
    gap:10px!important;
    margin-top:8px!important;
    color:#67756e!important;
    font-size:9px!important;
}
.bpp54-development-card .progress{
    height:5px!important;
    margin-top:4px!important;
    border-radius:999px!important;
    background:#e5ece8!important;
    overflow:hidden!important;
}
.bpp54-development-card .progress span{
    display:block!important;
    height:100%!important;
    border-radius:999px!important;
    background:var(--bpp54-green)!important;
}
.bpp54-development-card .starting strong{color:#203329!important;font-size:10px!important}
.bpp54 .project-actions,.bpp54 .property-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
    margin-top:9px!important;
}
.bpp54 .project-actions a,.bpp54 .property-actions a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:34px!important;
    border:1px solid var(--bpp54-green)!important;
    border-radius:6px!important;
    color:#087747!important;
    font-size:9px!important;
    font-weight:800!important;
}
.bpp54 .project-actions a.primary,.bpp54 .property-actions a.primary{
    background:var(--bpp54-green)!important;
    color:#fff!important;
}

.bpp54-property-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
}
.bpp54-property-grid.owner-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.bpp54-property-card .price{
    display:block!important;
    margin-bottom:4px!important;
    color:var(--bpp54-ink)!important;
    font-size:12px!important;
    font-weight:800!important;
}
.bpp54-property-card .property-meta{
    display:flex!important;
    gap:8px!important;
    flex-wrap:wrap!important;
    margin-top:6px!important;
    color:#5d6a63!important;
    font-size:9px!important;
}

.bpp54-bottom-grid{
    display:grid!important;
    grid-template-columns:repeat(3,1fr)!important;
    gap:10px!important;
    margin-top:14px!important;
}
.bpp54-bottom-grid.owner-bottom{grid-template-columns:1fr 1fr!important}
.bpp54-location-body{
    display:grid!important;
    grid-template-columns:110px 1fr!important;
    gap:10px!important;
    align-items:center!important;
    margin-top:10px!important;
}
.bpp54-map-symbol{
    display:grid!important;
    place-items:center!important;
    min-height:84px!important;
    border-radius:10px!important;
    background:linear-gradient(135deg,#dff5e9,#edf7f2)!important;
    color:#07964f!important;
    font-size:40px!important;
}
.bpp54-location-list,.bpp54-tags{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:6px!important;
}
.bpp54-location-list span,.bpp54-tags span{
    padding:6px 8px!important;
    border-radius:999px!important;
    background:#eff5f2!important;
    color:#59675f!important;
    font-size:9px!important;
}
.bpp54-check-list{
    margin:10px 0 0!important;
    padding:0!important;
    list-style:none!important;
}
.bpp54-check-list li{
    margin:6px 0!important;
    color:#59675f!important;
    font-size:10px!important;
}
.bpp54-check-list li:before{
    content:"✓"!important;
    margin-right:7px!important;
    color:#07964f!important;
    font-weight:800!important;
}
.bpp54-company-info{margin:10px 0 0!important}
.bpp54-company-info>div{
    display:grid!important;
    grid-template-columns:95px 1fr!important;
    gap:9px!important;
    padding:5px 0!important;
    border-bottom:1px solid #edf2ef!important;
}
.bpp54-company-info dt{color:#75827a!important;font-size:9px!important}
.bpp54-company-info dd{margin:0!important;font-size:9px!important;font-weight:700!important}
.bpp54-company-info a{color:#087747!important}
.bpp54-review-box{
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
    margin-top:12px!important;
}
.bpp54-review-box strong{font-size:28px!important}
.bpp54-review-box span{color:#718078!important;font-size:11px!important}

.bpp54-owner-cta{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
    margin-top:12px!important;
    padding:14px!important;
    border-radius:9px!important;
    background:linear-gradient(90deg,#00643f,#087e50)!important;
    color:#fff!important;
}
.bpp54-owner-cta strong{font-size:13px!important}
.bpp54-owner-cta p{margin:3px 0 0!important;color:#fff!important;font-size:9px!important}
.bpp54-owner-cta>div:last-child{display:flex!important;gap:7px!important}
.bpp54-owner-cta a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:34px!important;
    padding:0 11px!important;
    border-radius:6px!important;
    background:#fff!important;
    color:#087747!important;
    font-size:9px!important;
    font-weight:800!important;
}
.bpp54-owner-cta a.primary{background:#0ca15a!important;color:#fff!important}

.bpp54-tab-panel{padding-top:2px!important}
.bpp54-placeholder-panel>p{
    margin:12px 0 0!important;
    color:#6d7a73!important;
    font-size:12px!important;
}
.bpp54-empty,.bpp54-private-card{
    padding:22px!important;
    border:1px solid var(--bpp54-line)!important;
    border-radius:10px!important;
    background:#fff!important;
}
.bpp54-empty{text-align:center!important}
.bpp54-empty strong,.bpp54-private-card strong{display:block!important;font-size:13px!important}
.bpp54-empty p,.bpp54-private-card p{margin:4px 0 0!important;color:#76837c!important;font-size:10px!important}
.bpp54-private-card{margin:16px 0 28px!important}
.bpp54-mobile-actions{display:none!important}

@media(max-width:1100px){
    .bpp54-container{width:calc(100% - 28px)!important}
    .bpp54-overview-grid{grid-template-columns:minmax(0,1fr) 260px!important}
    .bpp54-property-grid,.bpp54-property-grid.owner-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:767px){
    body:has(.bpp54){padding-bottom:62px!important}
    .bpp54-container{width:calc(100% - 18px)!important}
    .bpp54-breadcrumbs{
        min-height:34px!important;
        overflow-x:auto!important;
        white-space:nowrap!important;
        font-size:9px!important;
    }
    .bpp54-hero,.bpp54-hero>.bpp54-container{min-height:165px!important}
    .bpp54-hero-copy{right:4px!important;width:220px!important;max-width:63%!important}
    .bpp54-hero-copy h1{font-size:28px!important}
    .bpp54-owner-hero-copy{right:4px!important;max-width:230px!important}
    .bpp54-owner-hero-copy strong{font-size:23px!important}
    .bpp54-profile-row{
        align-items:flex-start!important;
        flex-direction:column!important;
        gap:10px!important;
    }
    .bpp54-identity{align-items:flex-start!important}
    .bpp54-avatar{
        width:82px!important;
        height:82px!important;
        margin-top:-42px!important;
        border-width:4px!important;
        font-size:28px!important;
    }
    .bpp54-name-row h2{font-size:20px!important}
    .bpp54-actions{
        display:grid!important;
        grid-template-columns:repeat(2,1fr)!important;
        width:100%!important;
    }
    .bpp54-actions a{min-height:36px!important}
    .bpp54-top-kpis,.bpp54-summary{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:7px!important;
    }
    .bpp54-tabs{gap:19px!important}
    .bpp54-tabs a{padding:10px 0!important;font-size:10px!important}
    .bpp54-overview-grid{grid-template-columns:1fr!important}
    .bpp54-feature-grid,.bpp54-feature-grid.owner-features{grid-template-columns:repeat(2,1fr)!important}
    .bpp54-development-grid,
    .bpp54-property-grid,
    .bpp54-property-grid.owner-grid,
    .bpp54-bottom-grid,
    .bpp54-bottom-grid.owner-bottom{
        grid-template-columns:1fr!important;
    }
    .bpp54-development-card .media{aspect-ratio:1.8/1!important}
    .bpp54-property-card .media{aspect-ratio:1.65/1!important}
    .bpp54-location-body{grid-template-columns:1fr!important}
    .bpp54-owner-cta{align-items:flex-start!important;flex-direction:column!important}
    .bpp54-owner-cta>div:last-child{width:100%!important}
    .bpp54-owner-cta a{flex:1!important}
    .bpp54-mobile-actions{
        position:fixed!important;
        left:0!important;
        right:0!important;
        bottom:0!important;
        z-index:1200!important;
        display:grid!important;
        grid-template-columns:repeat(3,1fr)!important;
        background:#fff!important;
        border-top:1px solid var(--bpp54-line)!important;
        box-shadow:0 -8px 24px rgba(6,65,40,.11)!important;
    }
    .bpp54-mobile-actions a{
        display:flex!important;
        flex-direction:column!important;
        align-items:center!important;
        justify-content:center!important;
        min-height:58px!important;
        color:#087747!important;
        font-size:15px!important;
        font-weight:800!important;
    }
    .bpp54-mobile-actions span{margin-top:2px!important;font-size:8px!important}
}
