
.galerie .container { max-width:1440px; margin:0 auto; padding:0 18px; }

/* Galerie - grille & lightbox */
.galerie-hero { padding:48px 0; text-align:center; }
.galerie-hero .intro { margin-top:8px; color:var(--tt-muted,#b5bab3); }

/* Filtres (chips) */
.galerie-filters { display:flex; flex-wrap:wrap; gap:10px; margin:18px 0; align-items:center; }
.chip {
  display:inline-block; padding:8px 12px; border-radius:999px; background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.04); text-decoration:none; color:inherit;
  font-weight:600; font-size:14px;
}
.chip.is-active { background:linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.02)); box-shadow:0 10px 30px rgba(0,0,0,0.25); }

/* Grid */
.galerie-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:20px; }
.art-card { background:rgba(92,98,94,0.2); border-radius:12px; overflow:hidden; border:1px solid rgba(255,255,255,0.03); display:flex; flex-direction:column; }
.art-media { border:0; background:transparent; padding:0; cursor:pointer; display:block; width:100%; text-align:left; }
.art-media img { display:block; width:100%; height:280px; object-fit:cover; transition:transform .45s ease; }
.art-media:focus img, .art-media:hover img { transform:scale(1.03); }
.art-placeholder { height:280px; display:grid; place-items:center; color:var(--tt-muted); }

/* meta */
.art-meta { padding:12px 14px; }
.art-title { margin:0 0 6px; font-size:16px; }
.art-artist { margin:0; color:var(--tt-muted); font-size:14px; }

/* Pagination */
.pagination { margin:24px 0; display:flex; justify-content:center; }
.pagination .page-numbers { display:inline-block; padding:8px 12px; margin:0 6px; border-radius:8px; background:rgba(255,255,255,0.02); border:1px solid rgba(255,255,255,0.03); text-decoration:none; color:inherit; }

/* Lightbox (fade) */
#tt-lightbox {
  position:fixed; inset:0; display:flex; align-items:center; justify-content:center; background:rgba(0,0,0,0.88);
  visibility:hidden; opacity:0; transition:opacity .28s ease, visibility .28s ease; z-index:2000;
}
#tt-lightbox[aria-hidden="false"] { visibility:visible; opacity:1; }
.lightbox-stage { max-width:min(92vw,1100px); width:100%; text-align:center; padding:18px; }
.lightbox-img { max-width:100%; max-height:78vh; border-radius:10px; display:block; margin:0 auto; opacity:1; transition:opacity .35s ease; }
#tt-lightbox.is-swapping .lightbox-img { opacity:0; }
.lightbox-caption { color:#fff; margin-top:10px; opacity:.9; font-size:14px; }

/* Controls */
.lightbox-close, .lightbox-prev, .lightbox-next {
  position:fixed; background:transparent; color:#fff; border:1px solid rgba(255,255,255,0.12); padding:8px 12px; border-radius:10px; cursor:pointer;
}
.lightbox-close { top:18px; right:18px; }
.lightbox-prev { left:18px; top:50%; transform:translateY(-50%); font-size:28px; }
.lightbox-next { right:18px; top:50%; transform:translateY(-50%); font-size:28px; }

/* Responsive */
@media (max-width:1000px){ .galerie-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } .art-media img, .art-placeholder { height:220px; } }
@media (max-width:600px){ .galerie-grid{ grid-template-columns:1fr; } .art-media img, .art-placeholder { height:180px; } .lightbox-prev, .lightbox-next { display:none; } }
