.visu-container{
    width:100%;
    max-width:100%;
    margin:0;
    padding-top: 40px;
    box-sizing:border-box;
}

.visu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.visu-card{width:100%;height:420px;background:#fff;border:1px solid #DEE6ED;border-radius:12px;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.06);transition:.3s;display:flex;flex-direction:column;text-decoration:none;color:inherit;cursor:pointer;}
.visu-card:hover{transform:translateY(-6px);box-shadow:0 20px 45px rgba(0,0,0,.12)}
.visu-thumb{height:192px;background:#f4f7ff;position:relative;overflow:hidden;}
.visu-thumb img,.visu-thumb video{width:100%;height:100%;object-fit:cover}
.visu-subject-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:72px;opacity:.35;pointer-events:none}
.visu-badges{position:absolute;top:12px;left:12px;right:12px;display:flex;justify-content:space-between;gap:8px}
.visu-badge{font-family:'Plus Jakarta Sans';padding:4px 12px;font-size:12px;font-weight:700;border-radius:9px;display:flex;align-items:center;gap:6px;box-sizing:border-box;flex-shrink:1;min-width:0;max-width:48%}
.visu-content{padding:20px;flex:1;display:flex;flex-direction:column}
.visu-title{font-family:'Space Grotesk',sans-serif;font-size:20px;font-weight:700;line-height:120%;color:#000;margin-bottom:8px !important;text-decoration:none !important}
.visu-desc{font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;font-weight:400;line-height:120%;color:#525F7A;margin-bottom:8px;}
.visu-stats{display:flex;gap:16px;font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;font-weight:400;line-height:120%;color:#525F7A;margin-bottom:16px;}
.visu-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eee;padding-top:16px}
.visu-author{display:flex;align-items:center;gap:10px;font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;font-weight:400;line-height:120%;color:#525F7A;margin-top:25px;margin-bottom:9px;}
.visu-avatar{width:34px;height:34px;border-radius:50%;background:#e5e7eb;display:flex;align-items:center;justify-content:center;font-weight:600}
.visu-follow{background:#5b7cfa;color:#fff;border:none;padding:8px 18px;border-radius:999px;font-size:13px}
.visu-card,.visu-card *, .visu-title,.visu-title a, .visu-author,.visu-author a, .visu-desc,.visu-stats,.visu-badge{text-decoration:none !important}
 
/* Responsive Design */
@media(max-width:1024px){
    .visu-grid{grid-template-columns:repeat(2,1fr);gap:24px}
    .visu-container{padding:30px 16px}
    .visu-card{height:400px}
    .visu-badges{gap:6px}
    .visu-badge{font-size:11px;padding:3px 10px}
}
 
/* 768px se upar - 2 cards */
@media(min-width:769px) and (max-width:1024px){
    .visu-grid{grid-template-columns:repeat(2,1fr)}
}
 
/* 768px aur niche - 1 card */
@media(max-width:768px){
    .visu-grid{grid-template-columns:1fr;gap:20px;justify-items:center}
@media(max-width:768px){
    .visu-container{
        width:100%;
        max-width:100%;
        padding:20px 16px;
    }
}
    .visu-card{width:100%;max-width:400px;height:auto;min-height:380px;margin:0 auto}
    .visu-thumb{height:180px}
    .visu-badges{top:8px;left:8px;right:8px;gap:6px;justify-content:space-between}
    .visu-badge{font-size:10px;padding:3px 8px;max-width:49%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    .visu-title{font-size:18px}
    .visu-desc{font-size:13px;line-height:1.4}
    .visu-stats{font-size:13px}
    .visu-author{font-size:13px}
    .visu-follow{font-size:12px;padding:6px 14px}
}
 
@media(max-width:480px){
    .visu-grid{gap:16px}
    .visu-container{padding:16px 12px}
    .visu-card{min-height:360px}
    .visu-thumb{height:160px}
    .visu-badges{top:6px;left:6px;right:6px;gap:4px}
    .visu-badge{font-size:9px;padding:2px 6px;border-radius:6px}
    .visu-content{padding:16px}
    .visu-title{font-size:16px}
    .visu-footer{flex-direction:column;gap:12px;align-items:flex-start}
    .visu-author{margin-top:15px}
}
 
/* Fix for 641px - 768px range (Tablet) */
@media(min-width:641px) and (max-width:768px){
    .visu-badges{gap:8px}
    .visu-badge{font-size:11px;padding:3px 10px;max-width:48%}
}