/* =========================
   VD PORTFOLIO FINAL DESIGN
   CLEAN & FIXED VERSION
========================= */

/* WRAPPER */
.vdpf-wrapper{
    padding:20px;
}

/* FILTER BAR */
.vdpf-filter{
    display:flex;
    justify-content:center;
    gap:10px;
    flex-wrap:wrap;
    margin-bottom:25px;
}

.vdpf-filter button{
    padding:6px 16px;
    border-radius:25px;
    border:1px solid #ddd;
    background:#fff;
    cursor:pointer;
    font-size:13px;
    transition:0.3s;
}

.vdpf-filter button.active,
.vdpf-filter button:hover{
    background:#f80000;
    color:#fff;
    border-color:#f80000;
}

/* GRID */
.vdpf-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}

/* CARD */
.vdpf-item{
    background:#fff;
    border-radius:15px;
    overflow:hidden;
    box-shadow:0 6px 18px rgba(0,0,0,0.08);
    transition:0.3s;
}

.vdpf-item:hover{
    transform:translateY(-5px);
}

/* IMAGE */
.vdpf-image{
    position:relative;
}

.vdpf-image img{
    width:100%;
    height:220px;
    object-fit:cover;
    display:block;
}

/* ICON OVERLAY */
.vdpf-overlay{
    position:absolute;
    top:10px;
    right:10px;
}

/* CONTENT */
.vdpf-content{
    padding:12px 14px;
}

/* ICON ROW */
.vdpf-bottom-icons{
    display:flex;
    gap:6px;
    align-items:center;
    margin-bottom:8px;
}

.vdpf-bottom-icons img{
    width:35px;
    height:35px;
    object-fit:contain;
}

/* TITLE */
.vdpf-content h3{
    font-size:16px;
    margin:5px 0;
}

/* CLIENT */
.vdpf-client{
    font-size:13px;
    color:#666;
}

/* RESPONSIVE */
@media(max-width:1024px){
    .vdpf-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:600px){
    .vdpf-grid{
        grid-template-columns:1fr;
    }
}

.vdpf-image{
    padding:12px;
}

.vdpf-top-icons{
    display:flex;
    gap:8px;
    align-items:center;
    margin-bottom:8px;
}

.vdpf-top-icons img{
    width:20px;
    height:20px;
    object-fit:contain;
}
.vdpf-bottom-icons{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-top:8px;
}

/* LEFT ICON */
.vdpf-left-icon img{
    width:35px;
    height:35px;
    object-fit:contain;
}

/* RIGHT ICON */
.vdpf-right-icon img{
    width:35px;
    height:35px;
    object-fit:contain;
}

/* CENTER TITLE */
.vdpf-title-center{
    flex:1;
    text-align:center;
}

.vdpf-title-center h3{
    font-size:14px;
    font-weight:600;
    margin:0;
    line-height:1.2;
}
.vdpf-filter{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
    margin:20px 0 30px;
}

/* ALL BUTTONS */
.vdpf-filter button{
    padding:0px 14px;
    border-radius:14px;
    border:1px solid #ddd;
    background:#fff;
    font-size:13px;
    font-weight:500;
    cursor:pointer;
    transition:0.3s;
    color:#333;
    line-height: 35px;
}

/* HOVER */
.vdpf-filter button:hover{
    border-color:#e60023;
    color:#fff;
}

/* ACTIVE BUTTON */
.vdpf-filter button.active{
    background:linear-gradient(90deg,#e60023,#111);
    color:#fff;
    border:0;
    box-shadow:0 6px 15px rgba(230,0,35,0.25);
}

/* REMOVE ANY EXTRA WIDTH ISSUE */
.vdpf-filter button{
    min-width:unset;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}