/* =====================================================
   APD PROPERTY CARD PREMIUM
===================================================== */

.apd-grid{

    display:grid;

    grid-template-columns:repeat(auto-fill,minmax(390px,1fr));

    gap:32px;

    align-items:start;

}

.apd-property-card{

    background:#fff;

    border-radius:24px;

    overflow:hidden;

    border:1px solid #EEF2F7;

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

    transition:
        transform .25s ease,
        box-shadow .25s ease;

}

.apd-property-card:hover{

    transform:translateY(-8px);

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

}

.apd-property-image-wrapper{

    position:relative;

    width:100%;

    height:260px;

    overflow:hidden;

    background:#EEF2F7;

}

.apd-property-image{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.35s;

}

.apd-property-card:hover .apd-property-image{

    transform:scale(1.05);

}

.apd-property-placeholder{

    height:100%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:#eef3fb;

    color:#666;

    font-size:18px;

}

.apd-badge{

    position:absolute;

    top:16px;

    left:16px;

    background:#7CC70A;

    color:#fff;

    padding:7px 14px;

    border-radius:50px;

    font-size:13px;

    font-weight:700;

    box-shadow:0 5px 18px rgba(0,0,0,.15);

}

.apd-property-body{

    padding:26px;

}

.apd-property-title{

    margin:0;

    color:#16315F;

    font-size:28px;

    font-weight:700;

    line-height:1.25;

}

.apd-property-location{

    margin-top:10px;

    color:#6B7280;

    font-size:15px;

    font-weight:500;

    white-space:nowrap;

    overflow:hidden;

    text-overflow:ellipsis;

}

.apd-property-info{

    margin-top:18px;

    display:flex;

    gap:18px;

    flex-wrap:wrap;

    color:#555;

    font-size:14px;

}

.apd-property-actions{

    margin-top:24px;

    display:flex;

    gap:12px;

}

.apd-property-actions .apd-btn{

    flex:1;

    text-align:center;

}

.apd-property-price{

    margin-top:18px;

    font-size:38px;

    font-weight:800;

    color:#6CC000;

}

.apd-property-price span{

    font-size:15px;

    font-weight:500;

    color:#666;

}

.apd-property-features{

    display:flex;

    gap:18px;

    margin-top:18px;

    font-size:14px;

    color:#666;

    flex-wrap:wrap;

}

/* ==========================================
   APD PROPERTY CARD V2
========================================== */

.apd-favorite{

    position:absolute;

    top:16px;

    right:16px;

    width:42px;

    height:42px;

    border:none;

    border-radius:50%;

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

    color:#E53935;

    font-size:18px;

    cursor:pointer;

    display:flex;

    align-items:center;

    justify-content:center;

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

    transition:.25s;

}

.apd-favorite:hover{

    transform:scale(1.12);

}

.apd-property-price{

    margin-top:18px;

    font-size:30px;

    font-weight:800;

    color:#7CC70A;

    display:flex;

    align-items:flex-end;

    gap:8px;

}

.apd-property-price span{

    font-size:14px;

    font-weight:500;

    color:#6B7280;

}

.apd-property-features{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:12px;

    margin-top:22px;

}

.apd-property-features div{

    background:#F7F9FC;

    border-radius:14px;

    padding:12px;

    text-align:center;

    font-size:13px;

    color:#555;

}

.apd-property-features strong{

    display:block;

    margin-top:6px;

    color:#16315F;

    font-size:18px;

}

.apd-property-actions{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:12px;

    margin-top:26px;

}

.apd-property-actions .apd-btn{

    margin:0;

    text-align:center;

    padding:12px;

    border-radius:12px;

}