/* =========================================================
   PÁGINA: LISTADO DE PROPIEDADES
   Vista de escritorio
========================================================= */

.properties-page{
    min-height:100vh;
    overflow:clip;

    background:#f5f7fa;
}


/* =========================================================
   HERO
========================================================= */

.properties-hero{
    position:relative;

    width:100%;
    min-height:720px;
    margin:0;
    padding:170px 0 155px;

    display:flex;
    align-items:center;

    overflow:hidden;

    background:
        linear-gradient(
            90deg,
            rgba(4, 18, 30, 0.514) 0%,
            rgba(4, 25, 30, 0.253) 34%,
            rgba(4, 38, 30, 0) 68%,
            rgba(4, 38, 30, 0) 100%
        ),
        url("../../img/hero/hero.7b5c3de5a539.png");

    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;

    box-shadow:0 30px 80px rgba(15, 23, 42, .14);
}

.properties-hero::after{
    content:"";

    position:absolute;
    inset:0;

    pointer-events:none;

    background:
        linear-gradient(
            180deg,
            rgba(2, 6, 23, .18) 0%,
            transparent 30%,
            rgba(2, 6, 23, .12) 100%
        );
}


/* Contenido hero */

.properties-hero__content{
    position:relative;
    z-index:2;

    width:100%;
    max-width:760px;
    margin-left:auto;
    margin-right:auto;
}

.properties-hero__eyebrow{
    display:inline-flex;
    align-items:center;
    gap:14px;

    margin-bottom:22px;

    color:#d9fff1;

    font-family:"Montserrat", sans-serif;
    font-size:12px;
    line-height:1;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.15em;
}

.properties-hero__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    display:block;

    background:#d9fff1;
}

.properties-hero h1{
    max-width:820px;
    margin:0;

    color:#ffffff;

    font-family:"Montserrat", sans-serif;
    font-size:clamp(38px, 3.4vw, 56px);
    line-height:1.03;
    font-weight:800;
    letter-spacing:-.055em;
}

.properties-hero p{
    max-width:650px;
    margin:28px 0 0;

    color:#d9fff1;

    font-size:18px;
    line-height:1.75;
}

.properties-hero__meta{
    margin-top:40px;
}

.properties-hero__meta span{
    min-height:48px;
    padding:0 21px;

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

    border:1px solid rgba(255, 255, 255, .30);
    border-radius:999px;

    background:rgba(255, 255, 255, .12);
    backdrop-filter:blur(12px);

    color:#ffffff;

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


/* =========================================================
   INDICADOR UF
========================================================= */

.properties-uf-card{
    position:absolute;
    right:max(40px, calc((100vw - 1500px) / 2));
    bottom:125px;
    z-index:2;
    width:max-content;
    max-width:450px;
    min-height:78px;
    padding:17px 23px;
    display:flex;
    align-items:center;
    gap:28px;
}

.properties-uf-card span{
    display:block;

    margin-bottom:7px;

    color:#d9fff1;

    font-size:11px;
    line-height:1;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.13em;
}

.properties-uf-card strong{
    display:block;

    color:#ffffff;

    font-size:27px;
    line-height:1;
    font-weight:900;
    letter-spacing:-.035em;
}

.properties-uf-card small{
    color:#d9fff1;

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

    white-space:nowrap;
}


/* =========================================================
   BUSCADOR DE PROPIEDADES
========================================================= */

.property-search-section{
    position:relative;
    z-index:10;

    margin-top:-74px;
    margin-bottom:86px;
}

.property-search{
    width:min(1180px, 100%);
    margin:0 auto;

    padding:30px 32px 32px;

    border:1px solid rgba(15, 23, 42, .07);

    background:#ffffff;

    box-shadow:
        0 30px 75px rgba(15, 23, 42, .13),
        0 10px 25px rgba(15, 23, 42, .06);
}


/* Encabezado del buscador */

.property-search__header{
    margin-bottom:25px;

    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:28px;
}

.property-search__eyebrow{
    display:block;

    margin-bottom:9px;

    color:#2563eb;

    font-size:11px;
    line-height:1;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.13em;
}

.property-search__header h2{
    margin:0;

    color:#071426;

    font-size:clamp(25px, 2vw, 32px);
    line-height:1.1;
    font-weight:900;
    letter-spacing:-.04em;
}

.property-search__reset-top{
    flex-shrink:0;

    padding-bottom:3px;

    color:#64748b;

    font-size:13px;
    font-weight:800;
    text-decoration:none;

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

.property-search__reset-top:hover{

    transform:translateY(-1px);
}


/* Campos */

.property-search__fields{
    display:grid;
    grid-template-columns:
        minmax(210px, 1.1fr)
        minmax(190px, .9fr)
        minmax(210px, 1fr)
        210px;

    align-items:end;
    gap:15px;
}

.property-search__field{
    min-width:0;
}

.property-search__field label{
    display:block;
    margin-bottom:10px;
    color:#334155;
    font-size:12px;
    line-height:1.2;
    font-weight:900;
}

.property-search__field select{
    appearance:none;
    width:100%;
    height:56px;
    padding:0 48px 0 17px;

    outline:none;
    background-color:#ffffff;
    background-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 17px center;
    color:#000000;
    font-frgb(0, 0, 0)nherit;
    font-size:14px;
    font-weight:800;

    cursor:pointer;

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

.property-search__field select:hover{
    border-color:#94a3b8;
    background-color:#fbfdff;
}

.property-search__field select:focus{

    box-shadow:0 0 0 4px rgba(37, 99, 235, .10);
}


/* Acciones buscador */

.property-search__actions{
    display:flex;
    align-items:flex-end;
    gap:10px;
}

.property-search__submit{
    width:100%;
    min-height:56px;
    padding:0 24px;

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

    border:0;
    border-radius:0;
    outline:none;

    appearance:none;
    -webkit-appearance:none;

    background:#475569;
    color:#ffffff;

    box-shadow:none;

    font-family:inherit;
    font-size:12px;
    line-height:1;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.045em;

    cursor:pointer;
}

.property-search__submit:hover{
    border:0;
    outline:none;

    background:#334155;

    box-shadow:none;
    transform:none;
}

.property-search__submit:focus,
.property-search__submit:focus-visible{
    border:0;
    outline:none;
    box-shadow:none;
}

.property-search__submit:active{
    border:0;
    outline:none;

    box-shadow:none;
    transform:none;
}


/* Se mantiene por si el enlace Limpiar continúa en el HTML */

.property-search__clear{
    min-height:56px;
    padding:0 17px;

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

    border:1px solid #d8e0ea;
    border-radius:12px;

    background:#ffffff;
    color:#475569;

    font-size:13px;
    font-weight:800;
    text-decoration:none;
    white-space:nowrap;

    transition:
        color .2s ease,
        border-color .2s ease,
        background-color .2s ease;
}

.property-search__clear:hover{
    color:#071426;
    border-color:#94a3b8;
    background:#f8fafc;
}


/* =========================================================
   CONTENIDO PRINCIPAL
========================================================= */

.properties-main{
    display:block;

    padding-bottom:130px;
}

.properties-content{
    width:100%;
    min-width:0;
    margin:0;
}

/* =========================================================
   ENCABEZADO DEL CATÁLOGO
========================================================= */

.properties-toolbar{
    width:min(1400px, 100%);
    margin:0 auto 32px;

    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:32px;
}


/* Etiqueta superior */

.properties-toolbar__label{
    margin-bottom:8px;
    padding:0;

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

    background:transparent;
    color:#475569;

    font-size:10px;
    line-height:1;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.properties-toolbar__label::before{
    content:"";

    width:24px;
    height:2px;

    display:block;

    background:#071426;
}


/* Título */

.properties-toolbar h2{
    margin:0;

    color:#071426;

    font-size:32px;
    line-height:1.1;
    font-weight:900;
    letter-spacing:-.035em;
}


/* Cantidad de resultados */

.properties-toolbar__count{
    margin:7px 0 0;

    color:#64748b;

    font-size:13px;
    line-height:1.4;
    font-weight:700;
}


/* Ordenamiento */

.properties-toolbar__sort{
    padding-bottom:2px;

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

    flex-shrink:0;
}

.properties-toolbar__sort span{
    color:#64748b;

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

.properties-toolbar__sort button{
    height:44px;
    padding:0 20px;

    border:1px solid #e2e8f0;
    border-radius:4px;
    outline:none;

    background:#ffffff;
    color:#071426;

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

    box-shadow:0 8px 20px rgba(15, 23, 42, .06);

    cursor:pointer;

    transition:
        transform .2s ease,
        border-color .2s ease,
        box-shadow .2s ease;
}

.properties-toolbar__sort button:hover{
    transform:translateY(-1px);

    border-color:#cbd5e1;

    box-shadow:0 12px 26px rgba(15, 23, 42, .10);
}

/* =========================================================
   GRID DE PROPIEDADES
========================================================= */

.properties-grid{
    width:min(1400px, 100%);
    margin:0 auto;

    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:28px;

    align-items:start;
}


/* =========================================================
   TARJETA COMPACTA
========================================================= */

.listing-property-card{
    width:100%;
    min-width:0;
    overflow:hidden;
    border:1px solid #e1e7ed;
    background:#ffffff;
    box-shadow:
        0 12px 30px rgba(15, 23, 42, .07),
        0 3px 8px rgba(15, 23, 42, .04);

    transition:
        transform .22s ease,
        border-color .22s ease,
        box-shadow .22s ease;
}

.listing-property-card:hover{
    transform:translateY(-4px);

    border-color:#c8d1da;

    box-shadow:
        0 20px 42px rgba(15, 23, 42, .11),
        0 5px 12px rgba(15, 23, 42, .05);
}


/* =========================================================
   IMAGEN
========================================================= */

.listing-property-card__image{
    position:relative;

    width:100%;
    aspect-ratio:4 / 3;

    display:block;
    overflow:hidden;

    background:#e5e7eb;
}

.listing-property-card__image img{
    width:100%;
    height:100%;

    display:block;

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

    transition:transform .35s ease;
}

.listing-property-card:hover .listing-property-card__image img{
    transform:scale(1.035);
}

.listing-property-card__placeholder{
    width:100%;
    height:100%;

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

    background:#e5e7eb;
    color:#64748b;

    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em;
}


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

.listing-property-card__content{
    padding:17px 18px 18px;
}


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

.listing-property-card__location{
    min-width:0;

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

    color:#0f172a;

    font-size:13px;
    line-height:1.35;
    font-weight:800;
}

.listing-property-card__location svg{
    width:15px;
    height:15px;

    flex-shrink:0;

    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.listing-property-card__location span{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}


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

.listing-property-card__features{
    margin-top:14px;
    padding:13px 0;

    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:0;

    border-top:1px solid #edf0f3;
    border-bottom:1px solid #edf0f3;
}

.listing-property-card__feature{
    min-width:0;

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

    color:#64748b;

    font-size:10px;
    line-height:1;
    font-weight:700;
    white-space:nowrap;
}

.listing-property-card__feature:not(:last-child){
    border-right:1px solid #edf0f3;
}

.listing-property-card__feature svg{
    width:14px;
    height:14px;

    flex-shrink:0;

    fill:none;
    stroke:#334155;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}


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

.-property-card__price{
    margin-top:16px;

    color:#071426;

    font-size:20px;
    line-height:1.1;
    font-weight:900;
    letter-spacing:-.025em;

    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.listing-property-card__price{
    width:100%;
    margin-top:16px;

    display:flex;
    align-items:baseline;
    justify-content:space-between;
    gap:18px;

    color:#071426;
}

.listing-property-card__price strong{
    min-width:0;

    font-size:20px;
    line-height:1.1;
    font-weight:900;
    letter-spacing:-.025em;
    white-space:nowrap;
}

.listing-property-card__price small{
    margin-left:auto;

    color:#64748b;

    font-size:12px;
    line-height:1;
    font-weight:800;
    text-align:right;
    white-space:nowrap;
}

@media (max-width:430px){

    .listing-property-card__price{
        align-items:flex-start;
        flex-direction:column;
        gap:5px;
    }

    .listing-property-card__price small{
        margin-left:0;
        text-align:left;
    }

}

/* =========================================================
   ACCIONES
========================================================= */

.listing-property-card__actions{
    margin-top:16px;

    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
}

.listing-property-card__button{
    min-height:40px;
    padding:0 13px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid transparent;
    font-size:11px;
    line-height:1;
    font-weight:900;
    text-align:center;
    text-decoration:none;
    white-space:nowrap;

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

.listing-property-card__button:hover{
    transform:translateY(-1px);
}


/* Ver ficha */

.listing-property-card__button--primary{
    background:#475569;
    color:#ffffff;
}

.listing-property-card__button--primary:hover{
    box-shadow:0 8px 18px rgba(7,20,38,.18);
}


/* Agendar visita */

.listing-property-card__button--whatsapp{
    background:#ffffff;
    border-color: #475569;
    color:#475569;
}

.listing-property-card__button--whatsapp:hover{
    box-shadow:0 8px 18px rgba(7,20,38,.18);
}

/* =========================================================
   SIN RESULTADOS
========================================================= */

.properties-empty{
    padding:76px 40px;

    border:1px solid rgba(15, 23, 42, .06);
    border-radius:28px;

    background:#ffffff;

    text-align:center;

    box-shadow:0 24px 60px rgba(15, 23, 42, .08);
}

.properties-empty__eyebrow{
    display:inline-flex;

    margin-bottom:15px;

    color:#2563eb;

    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.13em;
}

.properties-empty h3{
    margin:0 0 15px;

    color:#071426;

    font-size:clamp(28px, 3vw, 40px);
    line-height:1.15;
    font-weight:900;
    letter-spacing:-.04em;
}

.properties-empty p{
    max-width:560px;
    margin:0 auto;

    color:#64748b;

    font-size:16px;
    line-height:1.7;
}

.properties-empty__button{
    min-height:50px;
    margin-top:29px;
    padding:0 25px;

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

    border-radius:999px;

    background:#071426;
    color:#ffffff;

    font-size:14px;
    font-weight:900;
    text-decoration:none;

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

.properties-empty__button:hover{
    background:#0f3d34;

    transform:translateY(-2px);

    box-shadow:0 14px 28px rgba(7, 20, 38, .20);
}



/* =========================================================
   PAGINACIÓN DE PROPIEDADES
========================================================= */

.properties-pagination{
    margin-top:64px;

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

.properties-pagination__pages{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
}

.properties-pagination__page,
.properties-pagination__control{
    min-width:46px;
    height:46px;
    padding:0 15px;

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

    border:1px solid #d8e0ea;

    background:#ffffff;
    color:#334155;

    font-size:13px;
    line-height:1;
    font-weight:900;
    text-decoration:none;

    transition:
        color .2s ease,
        border-color .2s ease,
        background-color .2s ease,
        transform .2s ease;
}

.properties-pagination__page:hover,
.properties-pagination__control:hover{
    transform:translateY(-2px);
}

.properties-pagination__page--active{
    color:#ffffff;

    background:#475569;

    pointer-events:none;
}

.properties-pagination__control{
    min-width:112px;
}

.properties-pagination__control--disabled{
    color:#94a3b8;
    background:#f8fafc;

    cursor:not-allowed;
    pointer-events:none;
}




















/* =========================================================
   PROPIEDADES LISTADO — NOTEBOOK
   1024px a 1799px
========================================================= */

@media (min-width:1024px) and (max-width:1799px){

    /* =====================================================
       HERO
    ====================================================== */

    .properties-hero{
        min-height:620px;
        padding:135px 0 125px;

        background-position:center;
    }

    .properties-hero__content{
        width:min(700px, calc(100% - 80px));
        max-width:none;
        margin:0 auto;
    }

    .properties-hero__eyebrow{
        margin-bottom:18px;
        font-size:11px;
    }

    .properties-hero h1{
        max-width:700px;

        font-size:clamp(46px, 4.5vw, 50px);
        line-height:1.03;
    }

    .properties-hero p{
        max-width:590px;
        margin-top:22px;

        font-size:16px;
        line-height:1.65;
    }

    .properties-hero__meta{
        margin-top:30px;
    }

    .properties-hero__meta span{
        min-height:44px;
        padding:0 18px;

        font-size:12px;
    }


    /* =====================================================
       UF
    ====================================================== */

    .properties-uf-card{
        min-height:68px;
        padding:14px 18px;
        gap:18px;
    }

    .properties-uf-card span{
        margin-bottom:5px;
        font-size:10px;
    }

    .properties-uf-card strong{
        font-size:22px;
    }

    .properties-uf-card small{
        font-size:11px;
    }


    /* =====================================================
       BUSCADOR
    ====================================================== */

    .property-search-section{
        margin-top:-64px;
        margin-bottom:70px;
    }

    .property-search-section .section-container{
        width:100%;
        margin:0;
    }

    .property-search{
        width:min(1050px, calc(100% - 64px));
        margin:0 auto;
        padding:26px 27px 28px;

        box-sizing:border-box;
    }

    .property-search__header{
        margin-bottom:21px;
    }

    .property-search__header h2{
        font-size:27px;
    }

    .property-search__fields{
        grid-template-columns:
            minmax(180px, 1.1fr)
            minmax(165px, .9fr)
            minmax(180px, 1fr)
            185px;

        gap:12px;
    }

    .property-search__field label{
        margin-bottom:8px;
        font-size:11px;
    }

    .property-search__field select{
        height:50px;
        padding:0 42px 0 14px;

        background-position:right 14px center;

        font-family:inherit;
        font-size:12px;
    }

    .property-search__submit{
        min-height:50px;
        padding:0 18px;

        font-size:11px;
    }


    /* =====================================================
       CONTENEDOR DEL CATÁLOGO
    ====================================================== */

    .properties-main{
        width:min(1280px, calc(100% - 64px));
        margin:0 auto;
        padding:0 0 100px;

        box-sizing:border-box;
    }

    .properties-content{
        width:100%;
        margin:0 auto;
    }


    /* =====================================================
       ENCABEZADO DEL CATÁLOGO
    ====================================================== */

    .properties-toolbar{
        width:100%;
        margin:0 auto 28px;
    }

    .properties-toolbar h2{
        font-size:29px;
    }

    .properties-toolbar__sort button{
        height:42px;
        padding:0 17px;

        font-size:12px;
    }


    /* =====================================================
       GRID CENTRADO
    ====================================================== */

    .properties-grid{
        width:100%;
        margin:0 auto;

        grid-template-columns:repeat(3, minmax(0, 1fr));
        gap:22px;
    }


    /* =====================================================
       TARJETAS
    ====================================================== */

    .listing-property-card{
        width:100%;
    }

    .listing-property-card__content{
        padding:15px 15px 16px;
    }

    .listing-property-card__location{
        font-size:12px;
    }

    .listing-property-card__features{
        margin-top:12px;
        padding:11px 0;

        gap:5px;
    }

    .listing-property-card__feature{
        gap:4px;
        font-size:10px;
    }

    .listing-property-card__feature svg{
        width:13px;
        height:13px;
    }

    .listing-property-card__price{
        margin-top:14px;
        font-size:18px;
    }

    .listing-property-card__actions{
        margin-top:14px;
        gap:7px;
    }

    .listing-property-card__button{
        min-height:38px;
        padding:0 10px;

        font-size:10px;
    }


    /* =====================================================
       PAGINACIÓN
    ====================================================== */

    .properties-pagination{
        margin-top:52px;
        gap:16px;
    }

    .properties-pagination__page,
    .properties-pagination__control{
        min-width:42px;
        height:42px;
        padding:0 13px;

        font-size:12px;
    }

    .properties-pagination__control{
        min-width:100px;
    }

}





/* =========================================================
   PROPIEDADES LISTADO — MÓVIL
   Hasta 767px
========================================================= */

@media (max-width:767px){

    /* =====================================================
       PÁGINA Y CONTENEDORES
    ====================================================== */

    .properties-page{
        width:100%;
        min-height:100vh;

        overflow-x:hidden;
    }

    .properties-page .section-container{
        width:calc(100% - 32px);
        margin:0 auto;
    }


    /* =====================================================
       HERO
    ====================================================== */

    .properties-hero{
        width:100%;
        min-height:680px;

        margin:0;
        padding:120px 20px 170px;

        align-items:flex-start;

        box-sizing:border-box;

        background:
            linear-gradient(
                90deg,
                rgba(4, 18, 30, .80) 0%,
                rgba(4, 25, 30, .66) 55%,
                rgba(4, 38, 30, .38) 100%
            ),
            url("../../img/hero/hero.7b5c3de5a539.png");

        background-size:cover;
        background-position:62% center;
        background-repeat:no-repeat;
    }

    .properties-hero__content{
        width:100%;
        max-width:none;

        margin:0;
    }

    .properties-hero__eyebrow{
        margin-bottom:17px;

        gap:10px;

        font-size:9px;
        line-height:1.3;
        letter-spacing:.12em;
    }

    .properties-hero__eyebrow::before{
        width:25px;
    }

    .properties-hero h1{
        max-width:100%;

        font-size:clamp(38px, 10.5vw, 48px);
        line-height:1.04;
        letter-spacing:-.05em;
    }

    .properties-hero p{
        max-width:100%;
        margin-top:22px;

        font-size:15px;
        line-height:1.65;
    }

    .properties-hero__meta{
        margin-top:28px;
    }

    .properties-hero__meta span{
        min-height:42px;
        padding:0 17px;

        font-size:11px;
    }


    /* =====================================================
       INDICADOR UF
    ====================================================== */

    .properties-uf-card{
        top:auto;
        right:20px;
        bottom:82px;
        left:20px;

        width:auto;
        max-width:none;
        min-height:0;
        padding:12px 0;

        justify-content:space-between;
        gap:15px;
    }

    .properties-uf-card span{
        margin-bottom:4px;

        font-size:9px;
    }

    .properties-uf-card strong{
        font-size:20px;
    }

    .properties-uf-card small{
        max-width:145px;

        font-size:9px;
        line-height:1.4;
        text-align:right;
        white-space:normal;
    }


    /* =====================================================
       BUSCADOR
    ====================================================== */

    .property-search-section{
        margin-top:-52px;
        margin-bottom:62px;
    }

    .property-search-section .section-container{
        width:calc(100% - 32px);
    }

    .property-search{
        width:100%;
        margin:0;

        padding:25px 20px 22px;

        box-sizing:border-box;

        box-shadow:
            0 22px 48px rgba(15, 23, 42, .12),
            0 6px 16px rgba(15, 23, 42, .05);
    }

    .property-search__header{
        margin-bottom:23px;

        align-items:flex-start;
        flex-direction:column;
        gap:13px;
    }

    .property-search__eyebrow{
        margin-bottom:8px;

        font-size:9px;
    }

    .property-search__header h2{
        max-width:290px;

        font-size:27px;
        line-height:1.08;
    }

    .property-search__reset-top{
        padding:0;

        font-size:12px;
    }

    .property-search__fields{
        display:grid;
        grid-template-columns:1fr;
        gap:17px;
    }

    .property-search__field label{
        margin-bottom:8px;

        font-size:11px;
    }

    .property-search__field select{
        width:100%;
        height:50px;
        padding:0 43px 0 14px;

        border:1px solid #d8e0ea;

        background-position:right 14px center;

        font-family:inherit;
        font-size:13px;
    }

    .property-search__actions{
        width:100%;
        margin-top:3px;
    }

    .property-search__submit{
        width:100%;
        min-height:50px;
        padding:0 17px;

        font-size:11px;
    }


    /* =====================================================
       CONTENIDO PRINCIPAL
    ====================================================== */

    .properties-main{
        width:calc(100% - 32px);
        margin:0 auto;
        padding:0 0 80px;
    }

    .properties-content{
        width:100%;
    }


    /* =====================================================
       ENCABEZADO DEL CATÁLOGO
    ====================================================== */

    .properties-toolbar{
        width:100%;
        margin-bottom:27px;

        align-items:flex-start;
        flex-direction:column;
        gap:20px;
    }

    .properties-toolbar__label{
        margin-bottom:7px;

        font-size:9px;
    }

    .properties-toolbar h2{
        max-width:100%;

        font-size:29px;
        line-height:1.08;
    }

    .properties-toolbar__count{
        margin-top:7px;

        font-size:12px;
    }

    .properties-toolbar__sort{
        width:100%;
        padding:0;

        justify-content:space-between;
        gap:12px;
    }

    .properties-toolbar__sort span{
        font-size:12px;
    }

    .properties-toolbar__sort button{
        height:42px;
        padding:0 16px;

        border-radius:0;

        font-size:12px;
    }


    /* =====================================================
       GRID DE PROPIEDADES
    ====================================================== */

    .properties-grid{
        width:100%;

        grid-template-columns:1fr;
        gap:24px;
    }


    /* =====================================================
       TARJETAS
    ====================================================== */

    .listing-property-card{
        width:100%;

        box-shadow:
            0 10px 24px rgba(15, 23, 42, .06),
            0 2px 6px rgba(15, 23, 42, .03);
    }

    .listing-property-card:hover{
        transform:none;
    }

    .listing-property-card:hover .listing-property-card__image img{
        transform:none;
    }

    .listing-property-card__image{
        aspect-ratio:4 / 3;
    }

    .listing-property-card__content{
        padding:16px;
    }

    .listing-property-card__location{
        font-size:13px;
    }

    .listing-property-card__location svg{
        width:15px;
        height:15px;
    }


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

    .listing-property-card__features{
        margin-top:13px;
        padding:12px 0;
    }

    .listing-property-card__feature{
        gap:3px;

        font-size:9px;
    }

    .listing-property-card__feature svg{
        width:12px;
        height:12px;
    }


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

    .listing-property-card__price{
        margin-top:15px;

        align-items:baseline;
        flex-direction:row;
        gap:10px;
    }

    .listing-property-card__price strong{
        font-size:19px;
    }

    .listing-property-card__price small{
        margin-left:auto;

        font-size:10px;
        text-align:right;
    }


    /* =====================================================
       ACCIONES
    ====================================================== */

    .listing-property-card__actions{
        margin-top:15px;

        gap:7px;
    }

    .listing-property-card__button{
        min-height:42px;
        padding:0 8px;

        font-size:9.5px;
    }


    /* =====================================================
       SIN RESULTADOS
    ====================================================== */

    .properties-empty{
        padding:50px 22px;

        border-radius:0;
    }

    .properties-empty__eyebrow{
        font-size:9px;
    }

    .properties-empty h3{
        margin-bottom:13px;

        font-size:29px;
    }

    .properties-empty p{
        font-size:14px;
        line-height:1.6;
    }

    .properties-empty__button{
        width:100%;
        min-height:48px;
        margin-top:25px;
        padding:0 17px;

        border-radius:0;

        font-size:12px;
    }


    /* =====================================================
       PAGINACIÓN
    ====================================================== */

    .properties-pagination{
        width:100%;
        margin-top:45px;

        display:grid;
        grid-template-columns:1fr 1fr;
        gap:12px;
    }

    .properties-pagination__pages{
        grid-column:1 / -1;
        grid-row:1;

        width:100%;
        padding-bottom:4px;

        justify-content:flex-start;
        gap:7px;

        overflow-x:auto;
        scrollbar-width:thin;
    }

    .properties-pagination__page{
        min-width:40px;
        height:40px;
        padding:0 11px;

        flex-shrink:0;

        font-size:11px;
    }

    .properties-pagination__control{
        width:100%;
        min-width:0;
        height:42px;
        padding:0 12px;

        font-size:11px;
    }

    .properties-pagination > .properties-pagination__control{
        grid-row:2;
    }

}






























