/* Twombili Gallery CSS (keeps look consistent with your previous styling) */
.tw-gallery-wrap{max-width:1200px;margin:28px auto;padding:18px;font-family:Inter,Arial,Helvetica,sans-serif}
.tw-gallery-hero{background:#f5f7f9;padding:18px;border-radius:10px;margin-bottom:16px;text-align:center}
.tw-gallery-hero h1{margin:0 0 8px;font-size:28px;color:#002D47}
.tw-gallery-hero .intro{margin:0;color:#4b5563;font-size:16px}
.tw-filter-row{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap;justify-content:center}
.tw-filter-btn{background:#fff;border:1px solid #e6edf3;padding:8px 14px;border-radius:999px;cursor:pointer;color:#002D47;font-weight:600;transition:0.3s}
.tw-filter-btn.active,.tw-filter-btn:hover{background:#e47a1d;color:#fff}
.tw-gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px}
.tw-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 6px 18px rgba(16,24,40,0.04);display:flex;flex-direction:column;transition:transform .2s; cursor: pointer}
.tw-card:hover{transform:translateY(-3px)}
.tw-card img{width:100%;height:220px;object-fit:cover;display:block;opacity:0;transition:opacity .6s}
.tw-card img.loaded{opacity:1}
.tw-card-caption{padding:10px;font-size:14px;color:#374151}
.tw-load-more-wrap{display:flex;flex-direction:column;align-items:center;margin:18px 0}
.tw-btn{background:#002D47;color:#fff;border:none;padding:10px 18px;border-radius:10px;cursor:pointer;font-weight:700}

/* Range indicator */
.tw-range-indicator{margin-top:8px;color:#666;font-size:14px;text-align:center}

/* Lightbox */
.tw-lightbox{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.9);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:9999;padding:20px}
.tw-lightbox img{max-width:90%;max-height:80vh;border-radius:10px;margin-bottom:12px;box-shadow:0 6px 20px rgba(0,0,0,0.5)}
.tw-lightbox p{color:#fff;text-align:center;font-size:16px;max-width:90%}
.tw-lightbox-close,.tw-lightbox-prev,.tw-lightbox-next{position:absolute;background:none;border:none;color:#fff;font-size:36px;cursor:pointer;font-weight:700;transition:0.3s}
.tw-lightbox-close{top:10px;right:20px;opacity:1}
.tw-lightbox-prev{left:30px;top:50%;transform:translateY(-50%);opacity:0}
.tw-lightbox-next{right:30px;top:50%;transform:translateY(-50%);opacity:0}
.tw-lightbox:hover .tw-lightbox-prev,.tw-lightbox:hover .tw-lightbox-next{opacity:1}
.tw-lightbox-prev:hover,.tw-lightbox-next:hover,.tw-lightbox-close:hover{color:#e47a1d}

/* Responsive */
@media (max-width:1000px) {
  .tw-gallery-grid{grid-template-columns:repeat(2,1fr)}
  .tw-card img{height:180px}
}
@media (max-width:600px) {
  .tw-gallery-grid{grid-template-columns:1fr}
  .tw-card img{height:160px}
}
