.luxshowcase-grid{display:grid;gap:20px;grid-template-columns:repeat(3,1fr);margin:12px 0;}
.luxshowcase-grid.cols-1{grid-template-columns:1fr;}
.luxshowcase-grid.cols-2{grid-template-columns:repeat(2,1fr);}
.luxshowcase-grid.cols-3{grid-template-columns:repeat(3,1fr);}
.luxshowcase-grid.cols-4{grid-template-columns:repeat(4,1fr);}

.luxshowcase-card{border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:transform .22s,box-shadow .22s;box-shadow:0 18px 50px rgba(2,6,23,0.18);}
.luxshowcase-card:hover{transform:translateY(-6px);box-shadow:0 30px 80px rgba(2,6,23,0.26);}

.luxshowcase-header{height:160px;background-size:cover;background-position:center;}
.luxshowcase-body{background:#fff;padding:16px;}
.luxshowcase-title{margin:0 0 6px;font-size:18px;}
.luxshowcase-header-title{margin:0 0 6px;font-weight:700;}
.luxshowcase-cat{font-size:13px;color:#666;margin-bottom:8px;}
.luxshowcase-desc{margin-bottom:10px;color:#333;}
.luxshowcase-content{color:#333;font-size:14px;line-height:1.5;margin-bottom:12px;}
.luxshowcase-cta-row{display:flex;gap:8px;flex-wrap:wrap;}
.luxshowcase-cta{padding:6px 10px;border-radius:10px;text-decoration:none;background:var(--ls-cta-color,#1e88e5);color:#fff;font-weight:600;font-size:13px;}

/* presets */
.luxshowcase-style--glass .luxshowcase-body{background:linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0.02));color:#fff;}
.luxshowcase-style--neon .luxshowcase-body{background:#0f1115;color:#e9f2ff;}
.luxshowcase-style--frosted .luxshowcase-body{background:rgba(255,255,255,0.9);color:#07101a;}
.luxshowcase-style--minimal .luxshowcase-body{background:#fff;color:#111;border:1px solid #eef2f6;}
.luxshowcase-style--material .luxshowcase-body{background:#fff;color:#111;box-shadow:0 8px 20px rgba(2,6,23,0.08);}
.luxshowcase-style--shadow-hover .luxshowcase-card{box-shadow:0 18px 50px rgba(2,6,23,0.18);}
.luxshowcase-style--modern-glossy .luxshowcase-body{background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));color:#fff;border:1px solid rgba(255,255,255,0.06);box-shadow:0 18px 50px rgba(2,6,23,0.32);}

/* responsive */
@media(max-width:900px){.luxshowcase-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.luxshowcase-grid{grid-template-columns:1fr;}}
