/** art-category-grid v1.2 — Artdealio UI refinements **/

:root{ --accent-color: rgba(188,164,111,0.95); --accent-light: rgba(188,164,111,0.28); --muted: rgba(255,255,255,0.72); }

.ap-plugin-wrap { padding-top:90px; background: radial-gradient(circle at top center, rgba(255,255,255,0.02), transparent 80%); }
.ap-breadcrumbs-inline { margin-bottom:18px; color:rgba(255,255,255,0.9); font-size:14px; display:block; text-align:center; width:100%; }
.ap-breadcrumbs-inline a{ color:rgba(255,255,255,0.95); text-decoration:none; }
.ap-breadcrumbs-inline a:hover{ opacity:0.85; }

.acg-directory-wrap{ max-width:1100px; margin:0 auto 60px; padding:0 18px; color:#fff; font-family: 'Helvetica Neue', Arial, sans-serif; }
.acg-directory-title{ font-size:34px; margin:8px 0 6px; color:#fff; text-align:center; letter-spacing:0.3px; }
.acg-directory-title::after { content:""; display:block; width:56px; height:3px; background:var(--accent-color); margin:10px auto 0; border-radius:3px; }
.acg-intro{ text-align:center; color:var(--muted); margin-bottom:20px; }

/* grid */
.acg-grid{ display:grid; gap:18px; margin-top:12px; align-items:stretch; animation: galleryFadeIn 0.9s ease both; }
.acg-cols-4{ grid-template-columns: repeat(4, 1fr); }
.acg-cols-3{ grid-template-columns: repeat(3, 1fr); }

.acg-card{ background: rgba(255,255,255,0.02); border-radius:12px; overflow:hidden; border:1px solid rgba(255,255,255,0.04); box-shadow:0 10px 30px rgba(0,0,0,0.45); display:flex; flex-direction:column; transition: transform .28s ease, box-shadow .28s ease; }
.acg-card:hover{ transform:translateY(-6px); box-shadow:0 20px 50px rgba(0,0,0,0.6); border-color: rgba(255,255,255,0.08); }

.acg-card-media{ position:relative; width:100%; overflow:hidden; }
.acg-card-media img{ width:100%; aspect-ratio:1/1; object-fit:cover; display:block; transition: transform .35s ease, filter .35s ease; }
.acg-card:hover .acg-card-media img{ transform:scale(1.04); filter:brightness(1.06); }

/* make excerpts consistent height */
.acg-card-body{ padding:18px; display:flex; flex-direction:column; flex:1 1 auto; min-height:160px; }
.acg-card-title{ font-size:18px; margin:0 0 8px; color:#fff; font-weight:700; }
.acg-card-excerpt{ color:var(--muted); font-size:14px; line-height:1.6; margin-bottom:12px; display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; text-overflow:ellipsis; }

.acg-card-cta{ margin-top:auto; display:inline-block; padding:10px 14px; border-radius:8px; background:linear-gradient(180deg, rgba(188,164,111,0.22), rgba(188,164,111,0.16)); color:#fff; font-weight:700; font-size:13px; text-transform:uppercase; letter-spacing:0.6px; text-align:center; transition: transform .12s ease, box-shadow .12s ease; }
.acg-card:hover .acg-card-cta{ transform: translateY(-2px); box-shadow:0 6px 18px rgba(188,164,111,0.06); }

/* subtle overlay and accent on hover */
.acg-card::after { content:""; position:absolute; inset:0; pointer-events:none; transition: background .28s ease; }
.acg-card:hover::after { background: linear-gradient(180deg, rgba(0,0,0,0.02), rgba(0,0,0,0.08)); }

/* fade-in helper */
@keyframes galleryFadeIn { from{opacity:0; transform:translateY(18px);} to{opacity:1; transform:none;} }

/* reveal-on-scroll class */
.ap-gallery .acg-card { opacity:0; transform: translateY(18px); transition: opacity .6s ease, transform .6s ease; }
.ap-gallery .acg-card.in-view { opacity:1; transform:none; }

/* responsive */
@media(max-width:900px){ .acg-cols-4{ grid-template-columns:repeat(2,1fr);} .acg-cols-3{ grid-template-columns:repeat(2,1fr);} .acg-card-body{ min-height:140px; } }
@media(max-width:480px){ .acg-cols-4,.acg-cols-3{ grid-template-columns:1fr; } .acg-card-body{ padding:14px; min-height:0; } .acg-card-title{ font-size:17px; } .acg-card-cta{ width:100%; } }