.gallery-page { padding-bottom:28px; }
.work-gallery { display:grid; gap:18px; }
.work-entry { display:grid; grid-template-columns:minmax(0,3fr) minmax(240px,2fr); min-height:320px; overflow:hidden; border:1px solid rgba(255,255,255,.07); border-radius:24px; background:linear-gradient(145deg,rgba(23,21,19,.96),rgba(16,15,14,.97)); box-shadow:var(--shadow); }
.work-entry-image { min-width:0; min-height:320px; padding:0; border:0; border-right:1px solid rgba(255,255,255,.07); background:#0d0c0c; cursor:pointer; }
.work-entry-image img { width:100%; height:100%; min-height:320px; max-height:560px; display:block; object-fit:contain; background:#0d0c0c; transition:transform .3s ease,filter .3s ease; }
.work-entry-image:hover img { transform:scale(1.012); filter:brightness(1.04); }
.work-entry-copy { display:flex; align-items:center; padding:30px; }
.work-entry-copy p { margin:0; color:#ddd5cc; font-size:clamp(16px,1.8vw,20px); line-height:1.7; white-space:pre-wrap; overflow-wrap:anywhere; }
.work-empty { padding:34px; border:1px solid rgba(255,255,255,.07); border-radius:20px; background:#151413; color:var(--muted); text-align:center; }
.work-lightbox[hidden] { display:none; }
.work-lightbox { position:fixed; inset:0; z-index:1000; display:grid; place-items:center; padding:20px; }
.work-lightbox-backdrop { position:absolute; inset:0; width:100%; height:100%; border:0; background:rgba(0,0,0,.82); backdrop-filter:blur(7px); cursor:pointer; }
.work-lightbox-card { position:relative; z-index:1; width:min(1000px,100%); max-height:calc(100vh - 40px); overflow:auto; border:1px solid rgba(255,255,255,.1); border-radius:22px; background:#151413; box-shadow:0 30px 90px rgba(0,0,0,.58); }
.work-lightbox-card img { width:100%; max-height:76vh; display:block; object-fit:contain; background:#0c0b0b; }
.work-lightbox-copy { padding:16px 20px 20px; display:grid; gap:6px; }
.work-lightbox-copy strong { font-family:Georgia,"Times New Roman",serif; font-size:22px; font-weight:500; }
.work-lightbox-copy span { color:var(--muted); line-height:1.55; white-space:pre-wrap; }
.work-lightbox-close { position:absolute; top:12px; right:12px; z-index:2; width:42px; height:42px; border:1px solid rgba(255,255,255,.14); border-radius:50%; background:rgba(13,12,12,.84); color:#fff; font-size:28px; line-height:1; cursor:pointer; }
.work-lightbox-open { overflow:hidden; }
@media (max-width:768px) {
  .work-entry { grid-template-columns:1fr; min-height:0; border-radius:20px; }
  .work-entry-image { min-height:0; border-right:0; border-bottom:1px solid rgba(255,255,255,.07); }
  .work-entry-image img { min-height:0; height:auto; max-height:none; }
  .work-entry-copy { padding:20px; }
  .work-lightbox { padding:8px; }
  .work-lightbox-card { max-height:calc(100vh - 16px); border-radius:17px; }
}
