body{background:#fff;color:#222;font-family:Arial,sans-serif}.card{border-radius:1rem}
.table-thumb{width:72px;height:54px;object-fit:cover;border-radius:.5rem}.favorite-btn{width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:#444;font-size:1.7rem;line-height:1;box-shadow:0 6px 18px rgba(0,0,0,.18);display:flex;align-items:center;justify-content:center;transition:.15s ease}.favorite-btn:hover{transform:scale(1.06)}.favorite-btn.is-active{background:#dc3545;color:#fff}.favorite-btn.detail{width:54px;height:54px;font-size:2rem}.profile-avatar{width:130px;height:130px;object-fit:cover;border:4px solid #f5f5f5}.nav-avatar{width:30px;height:30px;object-fit:cover;border-radius:50%;border:1px solid #eee}.property-card{overflow:hidden}.property-card .card-img-top{transition:.2s ease}.property-card:hover .card-img-top{transform:scale(1.02)}

/* Página pública de propiedades: filtros laterales */
.property-results-page{background:#f7f7f8;min-height:70vh}.property-filter-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:24px;align-items:start}.property-filter-sidebar{position:sticky;top:86px;align-self:start;transition:width .2s ease,opacity .2s ease,transform .2s ease}.property-filter-panel{background:#fff;border:1px solid #eee;border-radius:18px;box-shadow:0 10px 35px rgba(15,23,42,.07);overflow:hidden}.filter-header{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 14px;border-bottom:1px solid #eee}.filter-header strong{font-size:14px;letter-spacing:.03em}.filter-header a{font-size:12px;color:#f2aa1f;font-weight:700;text-decoration:none}.filter-section{padding:14px 18px;border-bottom:1px solid #f0f0f0}.filter-section:last-of-type{border-bottom:0}.filter-section summary{cursor:pointer;list-style:none;text-transform:uppercase;font-size:11px;font-weight:800;color:#7d8490;letter-spacing:.08em;display:flex;align-items:center;justify-content:space-between}.filter-section summary::-webkit-details-marker{display:none}.filter-section summary::after{content:'⌄';font-size:16px;color:#a0a4ac;transition:transform .18s ease}.filter-section[open] summary::after{transform:rotate(180deg)}.filter-pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.filter-pill{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 14px;border:1px solid #dee2e6;border-radius:8px;background:#fff;color:#4b5563;font-size:12px;font-weight:600;cursor:pointer;transition:.15s ease}.filter-pill input{position:absolute;opacity:0;pointer-events:none}.filter-pill:hover,.filter-pill.is-active,.filter-pill:has(input:checked){background:#f2aa1f;border-color:#f2aa1f;color:#fff}.small-pills .filter-pill{min-height:30px;padding:0 12px}.filter-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;margin-top:14px}.filter-check{display:flex;align-items:center;gap:7px;font-size:12px;color:#4b5563;cursor:pointer}.filter-check input{width:15px;height:15px;accent-color:#f2aa1f}.filter-stack{margin-top:12px}.filter-label,.filter-subtitle{font-size:11px;color:#6b7280;font-weight:700;margin-bottom:6px}.filter-range-row{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;margin-top:12px}.filter-range-row span{color:#9ca3af}.filter-submit{border-radius:12px;font-weight:800;margin:16px 18px 18px;width:calc(100% - 36px)!important;color:#fff}.property-results-content{min-width:0}.property-filter-layout.filters-collapsed{grid-template-columns:0 minmax(0,1fr)}.property-filter-layout.filters-collapsed .property-filter-sidebar{opacity:0;transform:translateX(-24px);pointer-events:none;overflow:hidden;width:0}.property-filter-layout.filters-collapsed .property-results-content{grid-column:2}.property-card{border:1px solid #f0f0f0!important}.property-card .card-body{padding:1rem}@media (max-width:991.98px){.property-filter-layout{display:block}.property-filter-sidebar{position:fixed;z-index:1040;top:0;left:0;bottom:0;width:min(340px,92vw);overflow-y:auto;background:#fff;box-shadow:0 0 0 9999px rgba(15,23,42,.45);transform:translateX(-110%);opacity:0;pointer-events:none}.property-filter-layout:not(.filters-collapsed) .property-filter-sidebar{transform:translateX(0);opacity:1;pointer-events:auto}.property-filter-panel{min-height:100%;border-radius:0;border:0}.property-results-content{margin-top:0}.filter-check-grid{grid-template-columns:1fr 1fr}}@media (max-width:420px){.filter-check-grid{grid-template-columns:1fr}.filter-range-row{grid-template-columns:1fr}.filter-range-row span{display:none}}

/* V13: estabilización visual para Chrome y fallback sin depender de :has ni CDN */
.property-results-page{box-sizing:border-box}.property-results-page *{box-sizing:border-box}.property-filter-layout{width:100%}.property-filter-panel{font-family:Arial,sans-serif}.filter-section{background:#fff}.filter-section summary{outline:none}.filter-pills input[type="radio"]{position:absolute;opacity:0;width:1px;height:1px}.filter-pill.is-active{background:#f2aa1f!important;border-color:#f2aa1f!important;color:#fff!important}.filter-check input:checked{accent-color:#f2aa1f}.property-filter-toggle-fixed{position:relative;z-index:3}.property-results-content .row{row-gap:0}.property-card img{max-width:100%;display:block}.property-filter-sidebar .form-control,.property-filter-sidebar .form-select{background:#fff!important;border:1px solid #d9dde3!important;color:#111!important;border-radius:8px!important}.filter-submit{background:#f2aa1f!important;border-color:#f2aa1f!important;color:#fff!important;padding:11px 14px!important}
@media (min-width:992px){.property-filter-layout.filters-collapsed{grid-template-columns:0 minmax(0,1fr)!important}.property-filter-layout:not(.filters-collapsed){grid-template-columns:310px minmax(0,1fr)!important}.property-filter-sidebar{width:310px!important}.property-filter-layout.filters-collapsed .property-filter-sidebar{width:0!important}}

/* ===== Página detalle de propiedad: diseño tipo ficha inmobiliaria moderna ===== */
.property-detail-modern{
    background:#fff;
    color:#111936;
}
.property-detail-container{
    max-width:1460px;
    padding-left:28px;
    padding-right:28px;
}
.detail-back-link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#053b5a;
    font-weight:700;
    text-decoration:none;
    font-size:18px;
}
.detail-back-link:hover{color:#f2aa1f;}
.property-detail-top-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) 430px;
    gap:32px;
    align-items:start;
}
.property-gallery-card{
    display:grid;
    grid-template-columns:minmax(0,1fr) 210px;
    gap:10px;
}
.main-gallery-wrap{
    position:relative;
    height:520px;
    border-radius:14px;
    overflow:hidden;
    background:#f3f4f6;
}
.main-gallery-image{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}
.gallery-business-badge{
    position:absolute;
    top:18px;
    left:18px;
    z-index:2;
    display:inline-flex;
    align-items:center;
    min-height:42px;
    padding:0 18px;
    border-radius:8px;
    background:#f2aa1f;
    color:#111936;
    font-weight:900;
    letter-spacing:.04em;
}
.gallery-counter{
    position:absolute;
    right:18px;
    bottom:18px;
    z-index:2;
    padding:6px 12px;
    border-radius:999px;
    background:rgba(17,25,54,.9);
    color:#fff;
    font-weight:800;
    font-size:14px;
}
.side-thumbs-grid{
    display:grid;
    grid-template-rows:repeat(3,1fr);
    gap:10px;
    min-height:520px;
}
.thumb-item{
    position:relative;
    border:0;
    padding:0;
    border-radius:8px;
    overflow:hidden;
    background:#e5e7eb;
    cursor:pointer;
}
.thumb-item img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .18s ease;
}
.thumb-item:hover img{transform:scale(1.04);}
.thumb-item.has-more::after{
    content:'';
    position:absolute;
    inset:0;
    background:rgba(17,25,54,.48);
}
.thumb-item.has-more span{
    position:absolute;
    inset:0;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:30px;
    font-weight:900;
}
.property-summary-card{
    background:#fff;
    border:1px solid #efe6d5;
    border-radius:16px;
    box-shadow:0 12px 34px rgba(242,170,31,.14);
    padding:34px 30px;
}
.property-summary-card h1{
    font-size:31px;
    line-height:1.15;
    font-weight:800;
    margin:0 0 16px;
}
.summary-location{
    display:flex;
    gap:10px;
    align-items:flex-start;
    color:#5e6280;
    margin-bottom:22px;
}
.summary-location i{color:#ff5b93;margin-top:3px;}
.summary-stats{
    display:flex;
    flex-wrap:wrap;
    gap:18px 28px;
    color:#111936;
    font-weight:700;
}
.summary-stats span{display:inline-flex;align-items:center;gap:9px;}
.summary-stats i{color:#053b5a;font-size:22px;}
.property-summary-card hr{border-color:#d7d2c8;margin:26px 0;opacity:1;}
.summary-price{
    font-size:38px;
    font-weight:900;
    margin-bottom:24px;
}
.summary-agent{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:20px;
}
.summary-agent img{
    width:54px;
    height:54px;
    border-radius:50%;
    object-fit:cover;
    border:1px solid #e5e7eb;
}
.contact-label{text-align:center;color:#626981;margin:10px 0 14px;}
.summary-contact-actions{
    display:flex;
    justify-content:center;
    gap:16px;
    margin-bottom:22px;
}
.summary-contact-actions a{
    width:47px;
    height:47px;
    border-radius:50%;
    border:1px solid #e4e6ec;
    color:#111936;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:20px;
    text-decoration:none;
    transition:.15s ease;
}
.summary-contact-actions a:hover{
    background:#f2aa1f;
    border-color:#f2aa1f;
    color:#fff;
}
.request-visit-btn{
    width:100%;
    min-height:62px;
    border-radius:999px;
    color:#fff;
    font-weight:900;
    font-size:18px;
    border:0;
}
.detail-code-actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin:18px 0 14px;
    color:#5e6280;
    font-size:16px;
}
.detail-inline-action{
    border:0;
    background:transparent;
    color:#5e6280;
    font-weight:600;
    margin-left:20px;
}
.detail-inline-action:hover,.detail-inline-action.is-active{color:#f2aa1f;}
.detail-separator{border-color:#d5d6dc;opacity:1;margin:26px 0 34px;}
.property-detail-content-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) 400px;
    gap:58px;
    align-items:start;
}
.detail-price-main{
    font-size:35px;
    font-weight:900;
    margin-bottom:10px;
}
.detail-status,.detail-location-text{
    color:#424965;
    font-size:18px;
}
.detail-section{margin-top:30px;}
.detail-section h3{
    font-size:21px;
    font-weight:900;
    margin-bottom:16px;
}
.detail-section p{
    font-size:18px;
    line-height:1.75;
    color:#1e2947;
}
.features-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(120px,1fr));
    gap:22px;
    max-width:660px;
}
.feature-item{text-align:center;color:#4c536b;}
.feature-icon{
    width:58px;
    height:58px;
    margin:0 auto 11px;
    border-radius:14px;
    background:#f2f4f8;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#053b5a;
    font-size:25px;
}
.feature-item span{font-size:14px;line-height:1.35;display:block;}
.extra-data-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
    gap:12px;
}
.extra-data-grid div{
    border:1px solid #e6e8ee;
    border-radius:12px;
    padding:16px;
    background:#fbfbfc;
}
.extra-data-grid strong{display:block;font-size:18px;color:#111936;}
.extra-data-grid span{display:block;color:#6b7280;font-size:13px;margin-top:4px;}
.contact-form-section{
    border-top:1px solid #edf0f4;
    padding-top:24px;
}
.detail-map-card{
    position:sticky;
    top:94px;
    border-radius:14px;
    overflow:hidden;
    min-height:430px;
    background:#f3f4f6;
}
.detail-map-card iframe{
    display:block;
    width:100%;
    height:430px;
    border:0;
}
@media (max-width:1199.98px){
    .property-detail-top-grid{grid-template-columns:1fr;}
    .property-summary-card{max-width:100%;}
    .property-detail-content-grid{grid-template-columns:1fr;gap:28px;}
    .detail-map-card{position:static;}
}
@media (max-width:767.98px){
    .property-detail-container{padding-left:16px;padding-right:16px;}
    .property-gallery-card{grid-template-columns:1fr;}
    .main-gallery-wrap{height:340px;}
    .side-thumbs-grid{grid-template-columns:repeat(3,1fr);grid-template-rows:1fr;min-height:96px;}
    .property-summary-card{padding:24px 20px;}
    .property-summary-card h1{font-size:25px;}
    .summary-price,.detail-price-main{font-size:30px;}
    .detail-code-actions{align-items:flex-start;flex-direction:column;}
    .detail-inline-action{margin-left:0;margin-right:18px;}
}

/* ===== FIX GALERÍA DETALLE PROPIEDAD - layout igual referencia ===== */
.property-detail-modern .property-gallery-card{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) 230px !important;
    gap:12px !important;
    align-items:stretch !important;
    width:100% !important;
}

.property-detail-modern .main-gallery-wrap{
    position:relative !important;
    height:520px !important;
    border-radius:14px !important;
    overflow:hidden !important;
    background:#f3f4f6 !important;
}

.property-detail-modern .main-gallery-image{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block !important;
}

.property-detail-modern .side-thumbs-grid{
    display:grid !important;
    grid-template-rows:repeat(3, minmax(0, 1fr)) !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    height:520px !important;
    min-height:0 !important;
    width:100% !important;
}

.property-detail-modern .side-thumbs-grid .thumb-item{
    position:relative !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    border:0 !important;
    padding:0 !important;
    margin:0 !important;
    border-radius:10px !important;
    overflow:hidden !important;
    background:#e5e7eb !important;
    cursor:pointer !important;
    display:block !important;
}

.property-detail-modern .side-thumbs-grid .thumb-item img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block !important;
}

.property-detail-modern .side-thumbs-grid .thumb-item.has-more::after{
    content:'' !important;
    position:absolute !important;
    inset:0 !important;
    background:rgba(17,25,54,.48) !important;
}

.property-detail-modern .side-thumbs-grid .thumb-item.has-more span{
    position:absolute !important;
    inset:0 !important;
    z-index:2 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    color:#fff !important;
    font-size:30px !important;
    font-weight:900 !important;
}

@media (max-width: 991.98px){
    .property-detail-modern .property-gallery-card{
        grid-template-columns:1fr !important;
    }

    .property-detail-modern .main-gallery-wrap{
        height:420px !important;
    }

    .property-detail-modern .side-thumbs-grid{
        grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
        grid-template-rows:none !important;
        height:auto !important;
    }

    .property-detail-modern .side-thumbs-grid .thumb-item{
        aspect-ratio:4 / 3 !important;
        height:auto !important;
    }
}

@media (max-width: 575.98px){
    .property-detail-modern .main-gallery-wrap{
        height:300px !important;
    }

    .property-detail-modern .side-thumbs-grid{
        gap:8px !important;
    }
}

/* ===== MODAL GALERÍA DETALLE PROPIEDAD ===== */
.property-detail-modern .main-gallery-wrap{
    border:0 !important;
    padding:0 !important;
    text-align:left !important;
    cursor:zoom-in !important;
}

.property-detail-modern .gallery-open-trigger{
    cursor:zoom-in !important;
}

.gallery-modal-open{
    overflow:hidden;
}

.property-gallery-modal{
    position:fixed;
    inset:0;
    z-index:9999;
    display:none;
    align-items:center;
    justify-content:center;
    padding:24px;
}

.property-gallery-modal.is-open{
    display:flex;
}

.property-gallery-modal-backdrop{
    position:absolute;
    inset:0;
    background:rgba(5,11,26,.88);
}

.property-gallery-modal-dialog{
    position:relative;
    z-index:2;
    width:min(1180px,96vw);
    max-height:94vh;
    display:flex;
    flex-direction:column;
    gap:14px;
}

.gallery-modal-close{
    position:absolute;
    top:-14px;
    right:-14px;
    z-index:5;
    width:46px;
    height:46px;
    border:0;
    border-radius:50%;
    background:#fff;
    color:#111936;
    font-size:34px;
    line-height:1;
    font-weight:400;
    cursor:pointer;
    box-shadow:0 10px 30px rgba(0,0,0,.25);
}

.gallery-modal-figure{
    position:relative;
    margin:0;
    width:100%;
    height:min(76vh,720px);
    border-radius:14px;
    overflow:hidden;
    background:#111936;
    display:flex;
    align-items:center;
    justify-content:center;
}

.gallery-modal-figure img{
    width:100%;
    height:100%;
    object-fit:contain;
    display:block;
}

.gallery-modal-figure figcaption{
    position:absolute;
    right:18px;
    bottom:18px;
    padding:7px 14px;
    border-radius:999px;
    background:rgba(17,25,54,.86);
    color:#fff;
    font-weight:800;
}

.gallery-modal-nav{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    z-index:4;
    width:52px;
    height:72px;
    border:0;
    border-radius:14px;
    background:rgba(255,255,255,.92);
    color:#111936;
    font-size:58px;
    line-height:1;
    cursor:pointer;
    box-shadow:0 10px 30px rgba(0,0,0,.22);
}

.gallery-modal-prev{left:14px;}
.gallery-modal-next{right:14px;}
.gallery-modal-nav:hover,
.gallery-modal-close:hover{
    background:#f2aa1f;
    color:#fff;
}

.gallery-modal-thumbs{
    display:flex;
    gap:10px;
    overflow-x:auto;
    padding:8px 2px 2px;
}

.gallery-modal-thumb{
    flex:0 0 118px;
    height:78px;
    border:3px solid transparent;
    border-radius:10px;
    padding:0;
    overflow:hidden;
    background:#e5e7eb;
    cursor:pointer;
    opacity:.72;
}

.gallery-modal-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.gallery-modal-thumb.is-active{
    opacity:1;
    border-color:#f2aa1f;
}

@media (max-width:767.98px){
    .property-gallery-modal{
        padding:12px;
    }

    .gallery-modal-close{
        top:8px;
        right:8px;
        width:42px;
        height:42px;
        font-size:30px;
    }

    .gallery-modal-figure{
        height:68vh;
        border-radius:10px;
    }

    .gallery-modal-nav{
        width:42px;
        height:58px;
        font-size:44px;
        border-radius:10px;
    }

    .gallery-modal-prev{left:8px;}
    .gallery-modal-next{right:8px;}

    .gallery-modal-thumb{
        flex-basis:88px;
        height:62px;
    }
}


/* ===== Home: propiedades destacadas dinámicas con carrusel ===== */
.homdly-page-home .home-featured-clean__header{
    text-align:center;
    margin-bottom:30px;
}
.homdly-page-home .home-featured-carousel{
    position:relative;
    width:min(1220px, 100%);
    margin:0 auto;
    padding:0 58px 36px;
}
.homdly-page-home .home-featured-carousel__viewport{
    overflow:hidden;
    border-radius:26px;
}
.homdly-page-home .home-featured-track{
    display:flex;
    gap:24px;
    align-items:stretch;
    transition:transform .45s cubic-bezier(.4,0,.2,1);
    will-change:transform;
}
.homdly-page-home .home-featured-card{
    flex:0 0 calc((100% - 48px) / 3);
    min-width:0;
    background:#fff;
    border:1px solid #eee2d7;
    border-radius:24px;
    overflow:hidden;
    box-shadow:0 12px 30px rgba(17,67,88,.10);
    display:flex;
    flex-direction:column;
    transition:transform .18s ease, box-shadow .18s ease;
}
.homdly-page-home .home-featured-card:hover{
    transform:translateY(-5px);
    box-shadow:0 18px 42px rgba(17,67,88,.15);
}
.homdly-page-home .home-featured-card__image{
    position:relative;
    display:block;
    height:205px;
    overflow:hidden;
    background:#eef1f4;
    text-decoration:none;
}
.homdly-page-home .home-featured-card__image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .22s ease;
}
.homdly-page-home .home-featured-card:hover .home-featured-card__image img{
    transform:scale(1.04);
}
.homdly-page-home .home-featured-card__badge,
.homdly-page-home .home-featured-card__business{
    position:absolute;
    z-index:2;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    padding:0 16px;
    border-radius:999px;
    font-size:11px;
    font-weight:900;
    letter-spacing:.04em;
    text-transform:uppercase;
}
.homdly-page-home .home-featured-card__badge{
    top:14px;
    left:14px;
    background:#f2aa1f;
    color:#114358;
}
.homdly-page-home .home-featured-card__business{
    right:14px;
    bottom:14px;
    background:rgba(17,67,88,.92);
    color:#fff;
}
.homdly-page-home .home-featured-card__body{
    padding:16px 20px 20px;
    display:flex;
    flex-direction:column;
    gap:13px;
    flex:1;
}
.homdly-page-home .home-featured-card__top{
    display:grid;
    grid-template-columns:minmax(0,1fr) 46px;
    align-items:start;
    gap:12px;
}

.homdly-page-home .home-featured-card__titlebox{
    min-width:0;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:6px;
}
.homdly-page-home .home-featured-card__code{
    display:inline-flex;
    align-items:center;
    justify-content:flex-start;
    width:auto;
    max-width:100%;
    background:#f7f8fa;
    border:1px solid #e7ebf0;
    color:#114358;
    border-radius:999px;
    padding:5px 11px;
    font-size:12px;
    font-weight:900;
    line-height:1.1;
    white-space:nowrap;
}

.homdly-page-home .home-featured-card__top h3{
    margin:0;
    color:#114358;
    font-size:16px;
    line-height:1.2;
    font-weight:900;
    overflow-wrap:anywhere;
    word-break:break-word;
}
.homdly-page-home .home-featured-card__top form{
    margin:0;
}
.homdly-page-home .home-featured-card__fav{
    width:46px;
    height:46px;
    border-radius:50%;
    border:1px solid #e6e8ee;
    background:#fff;
    color:#114358;
    font-size:22px;
    line-height:1;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 6px 16px rgba(17,67,88,.10);
    padding:0;
}
.homdly-page-home .home-featured-card__fav.is-active{
    background:#dc3545;
    border-color:#dc3545;
    color:#fff;
}
.homdly-page-home .home-featured-card__location{
    margin:0;
    color:#647084;
    font-size:13px;
    line-height:1.5;
}
.homdly-page-home .home-featured-card__location i{
    color:#f2aa1f;
    margin-right:6px;
}
.homdly-page-home .home-featured-card__stats{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    color:#465166;
    font-size:13px;
}
.homdly-page-home .home-featured-card__stats span{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    background:#f7f8fa;
    border-radius:999px;
    padding:9px 8px;
    min-width:0;
    min-height:44px;
    text-align:center;
}
.homdly-page-home .home-featured-card__stats i{
    color:#114358;
    flex:0 0 auto;
}
.homdly-page-home .home-featured-card__footer{
    margin-top:auto;
    padding-top:16px;
    border-top:1px solid #eef0f3;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}
.homdly-page-home .home-featured-card__footer strong{
    color:#008060;
    font-size:18px;
    line-height:1.1;
    font-weight:900;
    white-space:nowrap;
    flex:1 1 auto;
    min-width:0;
}
.homdly-page-home .home-featured-card__footer a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    min-width:138px;
    padding:10px 20px;
    background:#f2aa1f;
    color:#114358;
    text-decoration:none;
    font-weight:900;
    border-radius:999px;
    white-space:nowrap;
    font-size:14px;
    flex:0 0 auto;
}
.homdly-page-home .home-featured-card__footer a:hover{
    background:#114358;
    color:#fff;
}
.homdly-page-home .home-featured-carousel__btn{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    z-index:10;
    width:46px;
    height:46px;
    border-radius:50%;
    border:1px solid #e6e8ee;
    background:#fff;
    color:#114358;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    box-shadow:0 8px 20px rgba(17,67,88,.12);
    transition:background .18s ease, color .18s ease, opacity .18s ease, transform .18s ease;
}
.homdly-page-home .home-featured-carousel__btn:hover{
    background:#f2aa1f;
    color:#114358;
    transform:translateY(-50%) scale(1.04);
}
.homdly-page-home .home-featured-carousel__btn:disabled{
    opacity:.35;
    cursor:default;
    transform:translateY(-50%);
}
.homdly-page-home .home-featured-carousel__btn--prev{
    left:0;
}
.homdly-page-home .home-featured-carousel__btn--next{
    right:0;
}
.homdly-page-home .home-featured-carousel.is-static .home-featured-carousel__btn{
    display:none;
}
.homdly-page-home .home-featured-dots{
    position:absolute;
    left:50%;
    bottom:0;
    transform:translateX(-50%);
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
}
.homdly-page-home .home-featured-dot{
    width:8px;
    height:8px;
    border-radius:50%;
    border:0;
    background:#d8dde6;
    padding:0;
    cursor:pointer;
    transition:width .2s ease, background .2s ease;
}
.homdly-page-home .home-featured-dot.is-active{
    width:26px;
    border-radius:999px;
    background:#f2aa1f;
}
.homdly-page-home .home-featured-empty{
    text-align:center;
}
.homdly-page-home .home-featured-clean__btn--bottom{
    margin-top:32px;
}

@media(max-width:992px){
    .homdly-page-home .home-featured-carousel{
        padding-left:50px;
        padding-right:50px;
    }
    .homdly-page-home .home-featured-card{
        flex-basis:calc((100% - 24px) / 2);
    }
}
@media(max-width:640px){
    .homdly-page-home .home-featured-carousel{
        padding-left:0;
        padding-right:0;
        padding-bottom:34px;
    }
    .homdly-page-home .home-featured-card{
        flex-basis:100%;
        border-radius:22px;
    }
    .homdly-page-home .home-featured-card__image{
        height:190px;
    }
    .homdly-page-home .home-featured-card__body{
        padding:15px 16px 18px;
        gap:12px;
    }
    .homdly-page-home .home-featured-card__top{
        grid-template-columns:minmax(0,1fr) 42px;
        gap:10px;
    }
    
.homdly-page-home .home-featured-card__titlebox{
    min-width:0;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:6px;
}
.homdly-page-home .home-featured-card__code{
    display:inline-flex;
    align-items:center;
    justify-content:flex-start;
    width:auto;
    max-width:100%;
    background:#f7f8fa;
    border:1px solid #e7ebf0;
    color:#114358;
    border-radius:999px;
    padding:5px 11px;
    font-size:12px;
    font-weight:900;
    line-height:1.1;
    white-space:nowrap;
}

.homdly-page-home .home-featured-card__top h3{
        font-size:15px;
    }
    .homdly-page-home .home-featured-card__fav{
        width:42px;
        height:42px;
        font-size:20px;
    }
    .homdly-page-home .home-featured-card__stats{
        gap:8px;
    }
    .homdly-page-home .home-featured-card__stats span{
        min-height:42px;
        padding:8px 6px;
        font-size:12px;
    }
    .homdly-page-home .home-featured-carousel__btn{
        width:40px;
        height:40px;
        top:42%;
    }
    .homdly-page-home .home-featured-carousel__btn--prev{
        left:10px;
    }
    .homdly-page-home .home-featured-carousel__btn--next{
        right:10px;
    }
    .homdly-page-home .home-featured-card__footer{
        gap:12px;
    }
    .homdly-page-home .home-featured-card__footer strong{
        font-size:16px;
    }
    .homdly-page-home .home-featured-card__footer a{
        min-width:128px;
        padding:10px 16px;
        font-size:13px;
    }
}
@media(max-width:360px){
    .homdly-page-home .home-featured-card__footer{
        flex-direction:column;
        align-items:stretch;
    }
    .homdly-page-home .home-featured-card__footer a{
        width:100%;
        min-width:0;
    }
}



/* ===== Iconos de comodidades: frontend y formulario admin ===== */
.feature-icon i,
.admin-amenity-icon i{
    font-size:22px;
    line-height:1;
    color:#114358;
}
.feature-icon img,
.admin-amenity-icon img{
    width:24px;
    height:24px;
    object-fit:contain;
    display:block;
}
.admin-amenity-option .form-check-label{
    display:inline-flex;
    align-items:center;
    gap:8px;
    cursor:pointer;
}
.admin-amenity-icon{
    width:30px;
    height:30px;
    border-radius:10px;
    background:#f3f5f9;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 30px;
}
.admin-amenity-option .form-check-input:checked + .form-check-label .admin-amenity-icon{
    background:#e8f3ff;
}
.admin-amenity-option .form-check-input:checked + .form-check-label .admin-amenity-icon i{
    color:#0d6efd;
}

/* Botones intermedios del filtro de propiedades */
.filter-action-block{padding:12px 18px;border-bottom:1px solid #f0f0f0;background:#fff}.filter-action-block .filter-submit-inline{margin:0!important;width:100%!important;border-radius:10px}.filter-action-block-top{padding-top:14px;padding-bottom:14px}.filter-action-block-middle{padding-top:14px;padding-bottom:14px}

/* Property cards: production carousel, stats and primary action */
.property-card__gallery{position:relative;height:240px;overflow:hidden;background:#eef1f4;isolation:isolate}
.property-card__slides{position:absolute;inset:0}
.property-card__slide{position:absolute;inset:0;width:100%;height:100%!important;object-fit:cover;opacity:0;visibility:hidden;transform:scale(1.015);transition:opacity .28s ease,visibility .28s ease,transform .45s ease}
.property-card__slide.is-active{opacity:1;visibility:visible;transform:scale(1)}
.property-card:hover .property-card__slide.is-active{transform:scale(1.025)}
.property-card__arrow{position:absolute;z-index:4;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;background:rgba(255,255,255,.94);color:#172033;box-shadow:0 5px 18px rgba(15,23,42,.2);opacity:0;transition:opacity .18s ease,background .18s ease,color .18s ease,transform .18s ease}
.property-card__arrow:hover{background:#f2aa1f;color:#111;transform:translateY(-50%) scale(1.06)}
.property-card__arrow--prev{left:10px}.property-card__arrow--next{right:10px}
.property-card__gallery:hover .property-card__arrow,.property-card__gallery:focus-within .property-card__arrow{opacity:1}
.property-card__counter{position:absolute;z-index:3;left:50%;bottom:10px;transform:translateX(-50%);padding:3px 9px;border-radius:999px;background:rgba(17,24,39,.72);color:#fff;font-size:11px;font-weight:700;line-height:1.4;backdrop-filter:blur(5px)}
.property-card__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;color:#677180}
.property-card__stats span{display:grid;grid-template-columns:auto auto;grid-template-areas:"icon value" "icon label";justify-content:center;align-items:center;column-gap:7px;min-width:0;padding:7px 5px;border:1px solid #edf0f3;border-radius:9px;background:#fafbfc;text-align:left}
.property-card__stats i{grid-area:icon;color:#f2aa1f;font-size:15px}.property-card__stats b{grid-area:value;color:#303846;font-size:13px;line-height:1}.property-card__stats small{grid-area:label;color:#7a8492;font-size:10px;line-height:1.1}
.property-card__detail-btn{background:#f2aa1f!important;border:1px solid #f2aa1f!important;color:#171717!important;font-weight:800;border-radius:8px;padding:.7rem 1rem;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}
.property-card__detail-btn:hover,.property-card__detail-btn:focus{background:#111827!important;border-color:#111827!important;color:#fff!important;transform:translateY(-1px)}
@media (hover:none){.property-card__arrow{opacity:1;width:34px;height:34px}}
@media (max-width:575.98px){.property-card__gallery{height:225px}.property-card__stats{gap:5px}.property-card__stats span{padding:7px 3px;column-gap:5px}.property-card__arrow{width:32px;height:32px}}
.homdly-page-home .home-featured-card__footer a{background:#f2aa1f!important;border-color:#f2aa1f!important;color:#171717!important}
.homdly-page-home .home-featured-card__footer a:hover,.homdly-page-home .home-featured-card__footer a:focus{background:#111827!important;border-color:#111827!important;color:#fff!important}
.homdly-page-home .home-featured-card__image.property-card__gallery{display:block}

/* Tarjetas destacadas: alineación editorial y datos geográficos completos. */
.homdly-page-home .home-featured-card__titlebox,
.homdly-page-home .home-featured-card__titlebox h3 {
    width: 100%;
    text-align: left !important;
    align-items: flex-start !important;
}
.homdly-page-home .home-featured-card__location {
    display: grid;
    grid-template-columns: 18px minmax(0,1fr);
    align-items: start;
    gap: 7px;
    width: 100%;
    text-align: left;
    margin: 0;
}
.homdly-page-home .home-featured-card__location i { margin: 3px 0 0; }
.homdly-page-home .home-featured-card__location span {
    min-width: 0;
    overflow-wrap: anywhere;
}
.homdly-page-home .home-featured-card__stats span {
    display: grid;
    grid-template-columns: 24px minmax(0,1fr);
    grid-template-areas: "icon value" "icon label";
    justify-content: start;
    align-items: center;
    column-gap: 7px;
    border: 1px solid #edf0f3;
    border-radius: 14px;
    padding: 10px 9px;
    text-align: left;
}
.homdly-page-home .home-featured-card__stats i {
    grid-area: icon;
    width: 24px;
    height: 24px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: #fff3cc;
    color: #114358;
}
.homdly-page-home .home-featured-card__stats b {
    grid-area: value;
    color: #263449;
    font-size: 13px;
    line-height: 1.1;
}
.homdly-page-home .home-featured-card__stats small {
    grid-area: label;
    color: #788397;
    font-size: 10px;
    line-height: 1.15;
}
@media (max-width: 430px) {
    .homdly-page-home .home-featured-card__stats { gap: 6px; }
    .homdly-page-home .home-featured-card__stats span {
        grid-template-columns: 20px minmax(0,1fr);
        column-gap: 5px;
        padding: 8px 6px;
    }
    .homdly-page-home .home-featured-card__stats i { width: 20px; height: 20px; font-size: 11px; }
    .homdly-page-home .home-featured-card__stats small { font-size: 9px; }
}

/* HOMDLY 2026-07: ajuste compacto de características en tarjetas destacadas */
.homdly-page-home .home-featured-card__stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    width: 100%;
}
.homdly-page-home .home-featured-card__stats span {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    grid-template-rows: auto auto;
    grid-template-areas:
        "icon value"
        "label label";
    align-items: center;
    justify-items: start;
    column-gap: 7px;
    row-gap: 4px;
    min-width: 0;
    min-height: 62px;
    padding: 9px 8px 8px;
    border: 1px solid #e8edf2;
    border-radius: 15px;
    background: #f7f8fa;
    overflow: hidden;
}
.homdly-page-home .home-featured-card__stats i {
    grid-area: icon;
    width: 28px;
    height: 28px;
    display: inline-grid;
    place-items: center;
    flex: none;
    border-radius: 9px;
    background: #fff1bd;
    color: #114358;
    font-size: 13px;
    line-height: 1;
}
.homdly-page-home .home-featured-card__stats b {
    grid-area: value;
    min-width: 0;
    max-width: 100%;
    color: #263449;
    font-size: clamp(12px, 3.2vw, 14px);
    line-height: 1.1;
    font-weight: 800;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.homdly-page-home .home-featured-card__stats small {
    grid-area: label;
    width: 100%;
    min-width: 0;
    color: #788397;
    font-size: 9px;
    line-height: 1.15;
    font-weight: 600;
    text-align: center;
    white-space: normal;
    overflow-wrap: anywhere;
}
@media (max-width: 430px) {
    .homdly-page-home .home-featured-card__stats { gap: 6px; }
    .homdly-page-home .home-featured-card__stats span {
        grid-template-columns: 24px minmax(0, 1fr);
        min-height: 58px;
        padding: 8px 6px 7px;
        column-gap: 5px;
        border-radius: 13px;
    }
    .homdly-page-home .home-featured-card__stats i {
        width: 24px;
        height: 24px;
        border-radius: 8px;
        font-size: 11px;
    }
    .homdly-page-home .home-featured-card__stats b { font-size: 12px; }
    .homdly-page-home .home-featured-card__stats small { font-size: 8.5px; }
}
@media (max-width: 350px) {
    .homdly-page-home .home-featured-card__stats span {
        grid-template-columns: 1fr;
        grid-template-areas: "icon" "value" "label";
        justify-items: center;
        row-gap: 3px;
        min-height: 78px;
    }
}
