*{
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    margin:0;
    background:#fff;
    color:#292929;
    font-family:'Poppins',sans-serif;
}

body.c9-lightbox-open{
    overflow:hidden;
}

button,
input,
textarea{
    font:inherit;
}

.c9-property{
    width:100%;
    padding:22px 0 70px;
    background:#fff;
}

.c9-property-container{
    width:92%;
    max-width:1380px;
    margin:0 auto;
}


/* ============================================================
   BARRA SUPERIOR
============================================================ */

.c9-property-topbar{
    min-height:42px;
    margin-bottom:14px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}

.c9-property-back{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#555;
    text-decoration:none;
    font-size:13px;
    font-weight:500;
    transition:.2s ease;
}

.c9-property-back:hover{
    color:#98001b;
}

.c9-property-back i{
    font-size:11px;
}

.c9-property-top-actions{
    display:flex;
    align-items:center;
    gap:8px;
}

.c9-top-action{
    height:38px;
    padding:0 14px;
    border:1px solid #dedede;
    border-radius:8px;
    background:#fff;
    color:#333;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    cursor:pointer;
    font-size:12px;
    font-weight:600;
    transition:.2s ease;
}

.c9-top-action:hover{
    border-color:#aaa;
    background:#f8f8f8;
}

.c9-top-action i{
    font-size:14px;
}

.c9-favorito.activo{
    border-color:#98001b;
    color:#98001b;
}

.c9-favorito.activo i{
    color:#98001b;
}


/* ============================================================
   GALERÍA
============================================================ */

.c9-gallery{
    position:relative;
    width:100%;
}


/* ACCIONES SOBRE LA IMAGEN */

.c9-gallery-actions{
    position:absolute;
    top:18px;
    right:18px;
    z-index:50;

    display:flex;
    align-items:center;
    gap:8px;
}

.c9-gallery-action{
    min-height:40px;
    padding:10px 15px;

    border:1px solid rgba(0,0,0,.10) !important;
    border-radius:7px !important;

    background:rgba(255,255,255,.96) !important;
    color:#333;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;

    box-shadow:0 3px 12px rgba(0,0,0,.18);

    cursor:pointer;

    font-size:11px;
    font-weight:600;

    transition:.2s ease;
}

.c9-gallery-action:hover{
    background:#fff !important;
    transform:translateY(-1px);
}

.c9-gallery-action i{
    font-size:14px;
}

.c9-gallery-action.c9-favorito.activo{
    color:#98001b;
}

.c9-gallery-action.c9-favorito.activo i{
    color:#98001b;
}


/* GALERÍA ESCRITORIO */

.c9-gallery-desktop{
    width:100%;
    height:auto;

    display:grid;

    grid-template-columns:
        minmax(0,2fr)
        minmax(310px,.82fr);

    gap:6px;

    overflow:hidden;

    border-radius:12px;

    background:#fff;
}


.c9-gallery button{
    margin:0;

    border:0;
    outline:0;

    cursor:pointer;
}


.c9-gallery-main{
    position:relative;

    width:100%;
    height:100%;

    overflow:hidden;

    background:#fff;
}


.c9-gallery-main img,
.c9-gallery-small img{
    width:100%;
    height:100%;

    display:block;

    object-fit:cover;
    object-position:center;

    transition:transform .35s ease;
}


.c9-gallery-main:hover img,
.c9-gallery-small:hover img{
    transform:scale(1.015);
}


.c9-gallery-side{
    min-width:0;
    height:100%;

    display:grid;

    grid-template-rows:
        1fr
        1fr;

    gap:6px;
}


.c9-gallery-small{
    position:relative;

    width:100%;
    height:100%;

    overflow:hidden;

    background:#fff;
}


/* VER TODAS LAS FOTOS */

.c9-gallery-more{
    position:absolute;

    right:16px;
    bottom:16px;

    min-height:40px;

    padding:0 16px;

    border-radius:7px;

    background:rgba(255,255,255,.96);

    color:#292929;

    display:flex;
    align-items:center;
    justify-content:center;

    gap:8px;

    box-shadow:
        0 3px 14px
        rgba(0,0,0,.15);

    font-size:12px;
    font-weight:600;
}


.c9-gallery-more i{
    font-size:15px;
}


/* GALERÍA MÓVIL */

.c9-gallery-mobile{
    display:none;
}


/* SIN FOTOS */

.c9-gallery-empty{
    width:100%;
    height:450px;

    border-radius:12px;

    background:#f0f0f0;
    color:#888;

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;

    gap:12px;
}


.c9-gallery-empty i{
    font-size:50px;
    color:#aaa;
}


.c9-gallery-empty span{
    font-size:14px;
}


/* ============================================================
   CABECERA DE LA PROPIEDAD
============================================================ */

.c9-property-heading{
    padding:27px 0 22px;
    border-bottom:1px solid #e8e8e8;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:end;
    gap:35px;
}

.c9-property-heading-left{
    min-width:0;
}

.c9-property-tags{
    margin-bottom:12px;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:7px;
}

.c9-tag{
    min-height:27px;
    padding:0 10px;
    border-radius:5px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:10px;
    line-height:1;
    font-weight:700;
    letter-spacing:.25px;
    text-transform:uppercase;
}

.c9-tag-operation{
    background:#98001b;
    color:#fff;
}

.c9-tag-code{
    background:#f0f0f0;
    color:#555;
}

.estado-disponible{
    background:#e8f6ed;
    color:#18733c;
}

.estado-vendido{
    background:#98001b;
    color:#fff;
}

.estado-reservado{
    background:#fff1cf;
    color:#8a6500;
}

.estado-alquilado{
    background:#e3f5e9;
    color:#19743b;
}

.estado-inactivo{
    background:#ececec;
    color:#666;
}

.c9-property-title{
    max-width:850px;
    margin:0;
    color:#222;
    font-size:28px;
    line-height:1.28;
    font-weight:600;
    letter-spacing:-.4px;
}

.c9-property-location{
    margin-top:10px;
    color:#666;
    display:flex;
    align-items:center;
    gap:7px;
    font-size:13px;
    line-height:1.5;
}

.c9-property-location i{
    color:#98001b;
    font-size:14px;
}

.c9-property-heading-price{
    min-width:275px;
    text-align:right;
}

.c9-price-label{
    margin-bottom:3px;
    color:#777;
    font-size:11px;
    font-weight:500;
}

.c9-price-main{
    color:#222;
    font-size:28px;
    line-height:1.15;
    font-weight:700;
    white-space:nowrap;
}

.c9-price-old{
    margin-bottom:2px;
    color:#999;
    font-size:13px;
    text-decoration:line-through;
}


/* ============================================================
   CARACTERÍSTICAS PRINCIPALES
============================================================ */

.c9-main-features{
    min-height:95px;
    padding:20px 0;
    border-bottom:1px solid #e8e8e8;
    display:flex;
    align-items:center;
    flex-wrap:wrap;
}

.c9-main-feature{
    min-height:50px;
    padding:0 29px;
    border-right:1px solid #e5e5e5;
    display:flex;
    align-items:center;
    gap:12px;
}

.c9-main-feature:first-child{
    padding-left:0;
}

.c9-main-feature:last-child{
    border-right:0;
}

.c9-main-feature > i{
    width:25px;
    color:#555;
    text-align:center;
    font-size:21px;
}

.c9-main-feature > div{
    display:flex;
    flex-direction:column;
}

.c9-main-feature strong{
    color:#292929;
    font-size:15px;
    line-height:1.2;
    font-weight:600;
}

.c9-main-feature span{
    margin-top:3px;
    color:#777;
    font-size:10px;
    line-height:1.2;
}


/* ============================================================
   CUERPO
============================================================ */

.c9-property-layout{
    padding-top:30px;
    display:grid;
    grid-template-columns:minmax(0,1fr) 350px;
    align-items:start;
    gap:55px;
}

.c9-property-content{
    min-width:0;
}

.c9-section{
    padding:0 0 35px;
    margin:0 0 35px;
    border-bottom:1px solid #e6e6e6;
}

.c9-section:last-child{
    margin-bottom:0;
}

.c9-section > h2,
.c9-private-title h2{
    margin:0 0 22px;
    color:#262626;
    font-size:20px;
    line-height:1.3;
    font-weight:600;
}


/* ============================================================
   UBICACIÓN
============================================================ */

.c9-location-main{
    margin-bottom:18px;
    display:flex;
    align-items:center;
    gap:13px;
}

.c9-location-icon{
    width:42px;
    height:42px;
    flex:0 0 42px;
    border-radius:50%;
    background:#f5e8eb;
    color:#98001b;
    display:flex;
    align-items:center;
    justify-content:center;
}

.c9-location-icon i{
    font-size:17px;
}

.c9-location-main > div:last-child{
    min-width:0;
    display:flex;
    flex-direction:column;
}

.c9-location-main strong{
    color:#333;
    font-size:14px;
    line-height:1.4;
    font-weight:600;
}

.c9-location-main span{
    margin-top:3px;
    color:#777;
    font-size:12px;
    line-height:1.5;
}

.c9-map-preview{
    width:100%;
    height:325px;
    margin-top:18px;
    overflow:hidden;
    border:1px solid #e5e5e5;
    border-radius:9px;
    background:#eee;
}

.c9-map-preview iframe{
    width:100%;
    height:100%;
    border:0;
    display:block;
}

.c9-map-link{
    margin-top:13px;
    color:#98001b;
    display:inline-flex;
    align-items:center;
    gap:7px;
    text-decoration:none;
    font-size:12px;
    font-weight:600;
}

.c9-map-link:hover{
    text-decoration:underline;
}


/* ============================================================
   DETALLES
============================================================ */

.c9-details-grid{
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
    column-gap:45px;
}

.c9-detail-item{
    min-height:50px;
    padding:12px 0;
    border-bottom:1px solid #ededed;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:15px;
}

.c9-detail-item span{
    color:#777;
    font-size:17px;
    line-height:1.4;
}

.c9-detail-item strong{
    color:#333;
    text-align:right;
    font-size:12px;
    line-height:1.4;
    font-weight:600;
}


/* ============================================================
   DESCRIPCIÓN
============================================================ */

.c9-description{
    max-width:850px;
    color:#4b4b4b;
    font-size:13px;
    line-height:1.85;
}

.c9-description p{
    margin:0 0 10px;
}

.c9-description p:last-child{
    margin-bottom:0;
}

.c9-empty-text{
    margin:0;
    color:#888;
    font-size:13px;
    line-height:1.7;
}


/* ============================================================
   INFORMACIÓN PRIVADA
============================================================ */

.c9-private-info{
    padding:22px;
    border:1px solid #ead8dc;
    border-radius:9px;
    background:#fffafb;
}

.c9-private-title{
    margin-bottom:13px;
    display:flex;
    align-items:center;
    gap:9px;
}

.c9-private-title i{
    color:#98001b;
    font-size:14px;
}

.c9-private-title h2{
    margin:0;
    font-size:16px;
}

.c9-private-content{
    color:#555;
    font-size:12px;
    line-height:1.75;
}


/* ============================================================
   SIDEBAR
============================================================ */

.c9-property-sidebar{
    min-width:0;
}

.c9-contact-card{
    position:sticky;
    top:95px;
    padding:25px;
    border:1px solid #e2e2e2;
    border-radius:10px;
    background:#454343;
    box-shadow:0 5px 20px rgba(0,0,0,.055);
}

.c9-contact-price{
    display:flex;
    flex-direction:column;
}

.c9-contact-price small{
    margin-bottom:3px;
    color:#fff;
    font-size:15px;
}

.c9-contact-price strong{
    color:#fff;
    font-size:24px;
    line-height:1.25;
    font-weight:700;
}

.c9-sidebar-old-price{
    margin-bottom:2px;
    color:#999;
    font-size:12px;
    text-decoration:line-through;
}

.c9-contact-divider{
    height:1px;
    margin:20px 0;
    background:#ececec;
}

.c9-contact-company{
    margin-bottom:20px;
    display:flex;
    align-items:center;
    gap:12px;
}

.c9-contact-logo{
    width:54px;
    height:54px;
    flex:0 0 54px;
    padding:6px;
    border:1px solid #e6e6e6;
    border-radius:8px;
    background:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
}

.c9-contact-logo img{
    max-width:100%;
    max-height:100%;
    display:block;
    object-fit:contain;
}

.c9-contact-company > div:last-child{
    min-width:0;
    display:flex;
    flex-direction:column;
}

.c9-contact-company strong{
    color:#fff;
    font-size:16px;
    line-height:1.4;
    font-weight:600;
}

.c9-contact-company span{
    margin-top:2px;
    color:#fff;
    font-size:12px;
    line-height:1.4;
}

.c9-contact-button{
    width:100%;
    min-height:46px;
    margin-bottom:9px;
    padding:0 15px;
    border-radius:7px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    text-decoration:none;
    font-size:12px;
    font-weight:600;
    transition:.2s ease;
}

.c9-contact-whatsapp{
    background:#25d366;
    color:#fff;
}

.c9-contact-whatsapp:hover{
    background:#1fbd5a;
}

.c9-contact-whatsapp i{
    font-size:18px;
}

.c9-contact-phone{
    border:1px solid #98001b;
    background:#fff;
    color:#98001b;
}

.c9-contact-phone:hover{
    background:#98001b;
    color:#fff;
}

.c9-contact-share{
    width:100%;
    min-height:42px;
    margin-top:4px;
    padding:0 15px;
    border:0;
    background:transparent;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    cursor:pointer;
    font-size:14px;
    font-weight:500;
}

.c9-contact-share:hover{
    color:#98001b;
}

.c9-contact-reference{
    margin-top:15px;
    padding-top:14px;
    border-top:1px solid #ededed;
    color:#fff;
    text-align:center;
    font-size:13px;
}

.c9-contact-reference strong{
    color:#a30000;
}


/* ============================================================
   LIGHTBOX
============================================================ */

.c9-lightbox{
    position:fixed;
    inset:0;
    z-index:999999;
    visibility:hidden;
    opacity:0;
    transition:opacity .2s ease,visibility .2s ease;
}

.c9-lightbox.activo{
    visibility:visible;
    opacity:1;
}

.c9-lightbox-backdrop{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.94);
}

.c9-lightbox-window{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
}

.c9-lightbox-header{
    position:relative;
    z-index:2;
    min-height:65px;
    padding:0 25px;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.c9-lightbox-header span{
    font-size:12px;
    font-weight:500;
}

.c9-lightbox-header button{
    width:42px;
    height:42px;
    border:0;
    border-radius:50%;
    background:rgba(255,255,255,.12);
    color:#fff;
    cursor:pointer;
    font-size:19px;
}

.c9-lightbox-content{
    position:relative;
    min-height:0;
    flex:1;
    display:flex;
    align-items:center;
    justify-content:center;
}

.c9-lightbox-content > img{
    max-width:calc(100% - 160px);
    max-height:calc(100vh - 175px);
    display:block;
    object-fit:contain;
    user-select:none;
}

.c9-lightbox-arrow{
    position:absolute;
    top:50%;
    width:48px;
    height:48px;
    border:0;
    border-radius:50%;
    background:rgba(255,255,255,.14);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    transform:translateY(-50%);
    cursor:pointer;
    font-size:18px;
    z-index:2;
}

.c9-lightbox-arrow:hover{
    background:rgba(255,255,255,.23);
}

.c9-lightbox-prev{
    left:25px;
}

.c9-lightbox-next{
    right:25px;
}

.c9-lightbox-thumbs{
    position:relative;
    z-index:2;
    min-height:90px;
    padding:10px 20px 15px;
    display:flex;
    justify-content:center;
    gap:7px;
    overflow-x:auto;
}

.c9-lightbox-thumbs button{
    width:82px;
    height:60px;
    flex:0 0 82px;
    padding:0;
    overflow:hidden;
    border:2px solid transparent;
    border-radius:5px;
    background:#222;
    opacity:.58;
    cursor:pointer;
}

.c9-lightbox-thumbs button.activo{
    border-color:#fff;
    opacity:1;
}

.c9-lightbox-thumbs img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}


/* ============================================================
   AVISO
============================================================ */

.c9-toast{
    position:fixed;
    left:50%;
    bottom:30px;
    z-index:1000000;
    min-height:44px;
    padding:0 18px;
    border-radius:7px;
    background:#262626;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    box-shadow:0 8px 25px rgba(0,0,0,.25);
    opacity:0;
    transform:translate(-50%,15px);
    transition:.25s ease;
    font-size:11px;
    font-weight:500;
}

.c9-toast.activo{
    opacity:1;
    transform:translate(-50%,0);
}

.c9-toast i{
    color:#63d98b;
}



/* ============================================================
   PROPIEDADES SIMILARES
============================================================ */

.c9-similares{
    width:100%;
    margin-top:55px;
    padding-top:38px;
    border-top:1px solid #e7e7e7;
}

.c9-similares-cabecera{
    margin-bottom:22px;

    display:flex;
    align-items:flex-end;
    justify-content:space-between;

    gap:20px;
}

.c9-similares-cabecera h2{
    margin:0;

    color:#252525;

    font-size:22px;
    line-height:1.3;
    font-weight:600;
}

.c9-similares-cabecera p{
    margin:5px 0 0;

    color:#888;

    font-size:11px;
}

.c9-similares-flechas{
    display:flex;
    gap:8px;
}

.c9-similares-flechas button{
    width:40px;
    height:40px;

    border:1px solid #dedede;
    border-radius:50%;

    background:#fff;
    color:#444;

    display:flex;
    align-items:center;
    justify-content:center;

    cursor:pointer;

    transition:.2s ease;
}

.c9-similares-flechas button:hover{
    border-color:#98001b;
    color:#98001b;
}

.c9-similares-slider{
    width:100%;

    display:flex;

    gap:18px;

    overflow-x:auto;

    scroll-behavior:smooth;
    scroll-snap-type:x mandatory;

    padding:2px 2px 15px;

    scrollbar-width:none;
}

.c9-similares-slider::-webkit-scrollbar{
    display:none;
}

.c9-similar-item{
    flex:0 0 calc((100% - 54px) / 4);

    min-width:0;

    scroll-snap-align:start;
}


/* EL CARD OCUPA TODO EL ITEM */

.c9-similar-item > *{
    width:100%;
}

.c9-similar-item .card,
.c9-similar-item .c9-card{
    width:100%;
    height:100%;
    margin:0;
}


/* ============================================================
   TABLET
============================================================ */

@media(max-width:1050px){

    .c9-property-container{
        width:94%;
    }

    .c9-gallery-desktop{
        height:450px;
        grid-template-columns:minmax(0,1.7fr) minmax(260px,.8fr);
    }

    .c9-property-layout{
        grid-template-columns:minmax(0,1fr) 310px;
        gap:30px;
    }

    .c9-contact-card{
        padding:20px;
    }

    .c9-price-main{
        font-size:24px;
    }

    .c9-property-title{
        font-size:25px;
    }

    .c9-main-feature{
        padding:0 20px;
    }
    
    .c9-similar-item{
    flex:0 0 calc((100% - 36px) / 3);
}

}


/* ============================================================
   MÓVIL
============================================================ */

@media(max-width:780px){

    .c9-property{
        padding:0 0 45px;
    }

    .c9-property-container{
        width:100%;
        max-width:none;
    }

    .c9-property-topbar{
        min-height:52px;
        margin:0;
        padding:0 16px;
        border-bottom:1px solid #eee;
    }

    .c9-property-back{
        font-size:11px;
    }

    .c9-top-action{
        width:37px;
        height:37px;
        padding:0;
        border-radius:50%;
    }

    .c9-top-action{
        font-size:0;
    }

    .c9-top-action i{
        font-size:15px;
    }


    /* GALERÍA */

    .c9-gallery-desktop{
        display:none;
    }

    .c9-gallery-mobile{
        position:relative;
        width:100%;
        height:330px;
        display:block;
        overflow:hidden;
        background:#fff;
        cursor:pointer;
    }

    .c9-gallery-mobile img{
        width:100%;
        height:100%;
        display:block;
        object-fit:cover;
        object-position:center;
    }

    .c9-mobile-counter{
        position:absolute;
        right:14px;
        bottom:14px;
        min-height:34px;
        padding:0 11px;
        border-radius:6px;
        background:rgba(20,20,20,.72);
        color:#fff;
        display:flex;
        align-items:center;
        justify-content:center;
        gap:6px;
        font-size:10px;
        font-weight:500;
    }

    .c9-gallery-empty{
        height:300px;
        border-radius:0;
    }
    
    .c9-gallery-actions{
    position:absolute;
    top:16px;
    right:16px;
    z-index:20;

    display:flex;
    align-items:center;
    gap:8px;
}

.c9-gallery-action{
    min-height:40px;
    padding:0 14px;

    border:1px solid rgba(0,0,0,.12);
    border-radius:7px;

    background:rgba(255,255,255,.96);
    color:#333;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;

    box-shadow:
        0 3px 12px
        rgba(0,0,0,.14);

    cursor:pointer;

    font-size:11px;
    font-weight:600;

    transition:.2s ease;
}

.c9-gallery-action:hover{
    background:#fff;
    transform:translateY(-1px);
}

.c9-gallery-action i{
    font-size:14px;
}

.c9-gallery-action.c9-favorito.activo{
    color:#98001b;
}

.c9-gallery-action.c9-favorito.activo i{
    color:#98001b;
}


.c9-gallery-actions{
    top:12px;
    right:12px;
    gap:7px;
}

.c9-gallery-action{
    width:38px;
    height:38px;
    min-height:38px;

    padding:0;

    border-radius:50%;
}

.c9-gallery-action span{
    display:none;
}

.c9-gallery-action i{
    font-size:15px;
}


    /* TÍTULO */

    .c9-property-heading{
        padding:20px 17px 18px;
        display:flex;
        flex-direction:column;
        align-items:stretch;
        gap:17px;
    }

    .c9-property-tags{
        margin-bottom:9px;
    }

    .c9-tag{
        min-height:24px;
        padding:0 8px;
        font-size:8px;
    }

    .c9-property-title{
        max-width:none;
        font-size:21px;
        line-height:1.35;
        letter-spacing:-.2px;
    }

    .c9-property-location{
        margin-top:8px;
        font-size:11px;
    }

    .c9-property-heading-price{
        min-width:0;
        text-align:left;
    }

    .c9-price-main{
        font-size:24px;
    }

    .c9-price-label{
        font-size:9px;
    }


    /* CARACTERÍSTICAS */

    .c9-main-features{
        min-height:0;
        padding:16px 17px;
        flex-wrap:nowrap;
        overflow-x:auto;
        scrollbar-width:none;
    }

    .c9-main-features::-webkit-scrollbar{
        display:none;
    }

    .c9-main-feature{
        min-width:max-content;
        min-height:44px;
        padding:0 18px;
        gap:9px;
    }

    .c9-main-feature:first-child{
        padding-left:0;
    }

    .c9-main-feature > i{
        width:20px;
        font-size:17px;
    }

    .c9-main-feature strong{
        font-size:13px;
    }

    .c9-main-feature span{
        font-size:8px;
    }


    /* CONTENIDO */

    .c9-property-layout{
        padding:0;
        display:flex;
        flex-direction:column;
        gap:0;
    }

    .c9-property-content{
        width:100%;
    }

    .c9-section{
        margin:0;
        padding:25px 17px;
        border-bottom:1px solid #e9e9e9;
    }

    .c9-section > h2,
    .c9-private-title h2{
        margin-bottom:17px;
        font-size:17px;
    }

    .c9-location-main{
        margin-bottom:14px;
    }

    .c9-location-icon{
        width:38px;
        height:38px;
        flex-basis:38px;
    }

    .c9-location-main strong{
        font-size:12px;
    }

    .c9-location-main span{
        font-size:10px;
    }

    .c9-map-preview{
        height:250px;
        border-radius:7px;
    }

    .c9-map-link{
        font-size:10px;
    }


    /* DETALLES */

    .c9-details-grid{
        grid-template-columns:1fr;
        column-gap:0;
    }

    .c9-detail-item{
        min-height:46px;
        padding:10px 0;
    }

    .c9-detail-item span,
    .c9-detail-item strong{
        font-size:13px;
    }


    /* DESCRIPCIÓN */

    .c9-description{
        font-size:14px;
        line-height:1.8;
    }

    .c9-empty-text{
        font-size:11px;
    }

    .c9-private-info{
        margin:20px 17px;
        padding:18px;
        border-bottom:1px solid #ead8dc;
    }


    /* SIDEBAR PASA ABAJO */

    .c9-property-sidebar{
        width:100%;
        padding:22px 17px 0;
    }

    .c9-contact-card{
        position:static;
        width:100%;
        padding:20px;
        border-radius:9px;
        box-shadow: inset 0 0 10px black;
    }

    .c9-contact-price strong{
        font-size:22px;
    }

    .c9-contact-button{
        min-height:47px;
        font-size:11px;
    }


    /* LIGHTBOX */

    .c9-lightbox-header{
        min-height:58px;
        padding:0 14px;
    }

    .c9-lightbox-header button{
        width:38px;
        height:38px;
    }

    .c9-lightbox-content > img{
        max-width:100%;
        max-height:calc(100vh - 130px);
    }

    .c9-lightbox-arrow{
        width:40px;
        height:40px;
        background:rgba(0,0,0,.35);
        font-size:15px;
    }

    .c9-lightbox-prev{
        left:8px;
    }

    .c9-lightbox-next{
        right:8px;
    }

    .c9-lightbox-thumbs{
        display:none;
    }
    
    .c9-similar-item{
    flex:0 0 calc((100% - 36px) / 3);
}

.c9-similares{
    margin-top:30px;
    padding:27px 17px 0;
}

.c9-similares-cabecera{
    margin-bottom:17px;
    align-items:center;
}

.c9-similares-cabecera h2{
    font-size:18px;
}

.c9-similares-cabecera p{
    font-size:9px;
}

.c9-similares-flechas{
    display:none;
}

.c9-similares-slider{
    gap:12px;
    margin-right:-17px;
    padding-right:17px;
}

.c9-similar-item{
    flex:0 0 82%;
}

}


/* ============================================================
   MÓVIL PEQUEÑO
============================================================ */

@media(max-width:430px){

    .c9-gallery-mobile{
        height:285px;
    }

    .c9-property-title{
        font-size:19px;
    }

    .c9-price-main{
        font-size:22px;
    }

    .c9-main-feature{
        padding:0 14px;
    }

    .c9-map-preview{
        height:220px;
    }

}

/* ============================================================
   CALCULADORA
============================================================ */

.c9-calculadora{
    margin:20px 0;
    padding:0;
    overflow:hidden;
    background:#fff;
    border:1px solid #e5e5e5;
    border-radius:12px;
}


/* ============================================================
   BOTÓN PRINCIPAL
============================================================ */

.c9-calculadora-abrir{
    position:relative;
    width:100%;
    min-height:100px;
    padding:16px 18px;

    display:flex;
    align-items:center;
    gap:15px;

    border:0;
    background:linear-gradient(
        135deg,
        #fff8f9 0%,
        #ffffff 100%
    );

    font-family:inherit;
    text-align:left;
    cursor:pointer;

    transition:
        background .2s ease,
        box-shadow .2s ease;
}

.c9-calculadora-abrir:hover{
    background:#fff7f8;
}


/* ============================================================
   ICONO
============================================================ */

.c9-calculadora-abrir-icono{
    width:54px;
    height:54px;
    flex:0 0 54px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:12px;

    background:#a90020;
    color:#fff;

    font-size:21px;

    box-shadow:
        0 5px 14px
        rgba(152,0,27,.18);
}


/* ============================================================
   TEXTOS DEL BOTÓN
============================================================ */

.c9-calculadora-abrir-texto{
    flex:1;
    min-width:0;
    display:block;
}


/* PROPONE TU */

.c9-calculadora-propone{
    display:block;

    margin:0;

    color:#333;

    font-size:13px;
    line-height:1.1;
    font-weight:700;

    letter-spacing:.5px;
}


/* PLAN DE PAGO */

.c9-calculadora-abrir-texto strong{
    display:block;

    margin:2px 0 5px;

    color:#a90020;

    font-size:20px;
    line-height:1.05;
    font-weight:800;

    letter-spacing:-.3px;
}


/* TEXTO PEQUEÑO */

.c9-calculadora-abrir-texto small{
    display:block;

    max-width:190px;

    color:#000;

    font-size:14px;
    line-height:1.4;
    font-weight:400;
}


/* ============================================================
   FLECHA
============================================================ */

.c9-calculadora-abrir-flecha{
    width:30px;
    height:30px;
    flex:0 0 30px;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#a90020;

    font-size:14px;
}

.c9-calculadora-abrir-flecha i{
    transition:transform .3s ease;
}

.c9-calculadora.abierta
.c9-calculadora-abrir-flecha i{
    transform:rotate(180deg);
}


/* ============================================================
   CONTENIDO DESPLEGABLE
============================================================ */

.c9-calculadora-contenido{
    display:none;

    padding:20px;

    border-top:1px solid #eee;

    background:#f8f8f8;
}

.c9-calculadora.abierta
.c9-calculadora-contenido{
    display:block;
}


/* ============================================================
   CAMPOS
============================================================ */

.c9-calculadora-campo{
    margin-bottom:15px;
}

.c9-calculadora-campo label{
    display:block;

    margin-bottom:6px;

    color:#555;

    font-size:12px;
    font-weight:600;
}


/* ============================================================
   PRECIO
============================================================ */

.c9-calculadora-precio{
    padding:11px 13px;

    border:1px solid #ddd;
    border-radius:7px;

    background:#fff;

    color:#222;

    font-size:14px;
    font-weight:700;
}


/* ============================================================
   INPUT ENTREGA
============================================================ */

.c9-calculadora-input{
    display:flex;
    align-items:center;

    overflow:hidden;

    border:1px solid #ddd;
    border-radius:7px;

    background:#fff;

    transition:.2s ease;
}

.c9-calculadora-input:focus-within{
    border-color:#98001b;

    box-shadow:
        0 0 0 3px
        rgba(152,0,27,.08);
}

.c9-calculadora-input span{
    padding-left:13px;

    color:#777;

    font-size:13px;
    font-weight:600;
}

.c9-calculadora-input input{
    width:100%;
    height:43px;

    padding:0 13px 0 7px;

    border:0;
    outline:0;

    background:transparent;

    color:#222;

    font-family:inherit;
    font-size:14px;
    font-weight:600;
}


/* ============================================================
   SELECT CUOTAS
============================================================ */

.c9-calculadora-campo select{
    width:100%;
    height:43px;

    padding:0 12px;

    border:1px solid #ddd;
    border-radius:7px;

    outline:0;

    background:#fff;

    color:#222;

    font-family:inherit;
    font-size:13px;
    font-weight:600;

    cursor:pointer;
}

.c9-calculadora-campo select:focus{
    border-color:#98001b;

    box-shadow:
        0 0 0 3px
        rgba(152,0,27,.08);
}


/* ============================================================
   RESULTADO
============================================================ */

.c9-calculadora-resultado{
    margin-top:18px;
    padding:15px;

    border:1px solid #e5e5e5;
    border-radius:9px;

    background:#fff;
}

.c9-calculadora-resultado > div{
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:10px;
}

.c9-calculadora-resultado > div:first-child{
    padding-bottom:12px;
    margin-bottom:12px;

    border-bottom:1px solid #eee;
}

.c9-calculadora-resultado span{
    color:#777;

    font-size:11px;
}

.c9-calculadora-resultado strong{
    color:#222;

    font-size:13px;
    font-weight:700;

    text-align:right;
}


/* ============================================================
   CUOTA CALCULADA
============================================================ */

.c9-calculadora-cuota{
    display:block !important;

    text-align:center;
}

.c9-calculadora-cuota span{
    display:block;

    margin-bottom:4px;
}

.c9-calculadora-cuota strong{
    display:block;

    color:#a90020;

    font-size:23px;
    line-height:1.2;
    font-weight:800;

    text-align:center;
}

.c9-calculadora-cuota small{
    display:block;

    margin-top:4px;

    color:#999;

    font-size:10px;
}


/* ============================================================
   WHATSAPP
============================================================ */

.c9-calculadora-whatsapp{
    width:100%;
    min-height:45px;

    margin-top:15px;
    padding:0 15px;

    display:flex;
    align-items:center;
    justify-content:center;

    gap:8px;

    border:0;
    border-radius:7px;

    background:#25d366;
    color:#fff;

    font-family:inherit;
    font-size:12px;
    font-weight:700;

    cursor:pointer;

    transition:
        transform .2s ease,
        filter .2s ease;
}

.c9-calculadora-whatsapp:hover{
    transform:translateY(-1px);
    filter:brightness(.96);
}

.c9-calculadora-whatsapp i{
    font-size:18px;
}


/* ============================================================
   MÓVIL
============================================================ */

@media(max-width:768px){

    .c9-calculadora{
        margin:18px 0;
    }

    .c9-calculadora-abrir{
        min-height:92px;

        padding:14px;

        gap:12px;
    }

    .c9-calculadora-abrir-icono{
        width:50px;
        height:50px;
        flex-basis:50px;

        font-size:19px;
    }

    .c9-calculadora-propone{
        font-size:12px;
    }

    .c9-calculadora-abrir-texto strong{
        font-size:18px;
    }

    .c9-calculadora-abrir-texto small{
        max-width:170px;

        font-size:9px;
    }

    .c9-calculadora-abrir-flecha{
        width:25px;
        flex-basis:25px;
    }

    .c9-calculadora-contenido{
        padding:17px 15px;
    }

    .c9-calculadora-cuota strong{
        font-size:21px;
    }

}


/* ============================================================
   MÓVIL PEQUEÑO - CALCULADORA
============================================================ */

@media(max-width:430px){

    .c9-calculadora-abrir{
        min-height:88px;

        padding:13px 12px;

        gap:10px;
    }

    .c9-calculadora-abrir-icono{
        width:46px;
        height:46px;
        flex-basis:46px;

        border-radius:10px;

        font-size:18px;
    }

    .c9-calculadora-propone{
        font-size:11px;
    }

    .c9-calculadora-abrir-texto strong{
        margin-top:2px;

        font-size:17px;
    }

    .c9-calculadora-abrir-texto small{
        max-width:155px;

        font-size:9px;
        line-height:1.3;
    }

    .c9-calculadora-abrir-flecha{
        width:22px;
        flex-basis:22px;

        font-size:12px;
    }

}