/* H&Z Projects Lightbox CSS (v1.2.0) */

.hz-lb-overlay{
  position:fixed;inset:0;z-index:99999;
  background:rgba(20,28,24,.94);
  display:none;
  align-items:center;justify-content:center;
  padding:24px;
  opacity:0;transition:opacity .18s ease;
}
.hz-lb-overlay.hz-lb-open{display:flex;opacity:1;}

.hz-lb-figure{
  margin:0;padding:0;max-width:100%;max-height:100%;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:14px;
}

.hz-lb-img{
  max-width:min(100%, 1400px);max-height:80vh;
  display:block;border-radius:6px;
  box-shadow:0 10px 40px rgba(0,0,0,.5);
  background:#000;
  object-fit:contain;
}

.hz-lb-caption{
  text-align:center;color:#f5f5f0;font-size:14px;line-height:1.5;
  max-width:680px;padding:0 16px;font-family:inherit;
  text-shadow:0 1px 2px rgba(0,0,0,.4);
}

.hz-lb-counter{
  position:absolute;top:18px;left:24px;
  color:rgba(245,245,240,.85);font-size:13px;font-weight:600;
  letter-spacing:0.04em;
}

.hz-lb-close,.hz-lb-prev,.hz-lb-next{
  position:absolute;background:rgba(20,28,24,.65);color:#fff;
  border:0;border-radius:50%;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:background .15s ease, transform .15s ease;
}
.hz-lb-close:hover,.hz-lb-prev:hover,.hz-lb-next:hover{background:#0e6b4e;}
.hz-lb-close:focus-visible,.hz-lb-prev:focus-visible,.hz-lb-next:focus-visible{
  outline:2px solid #a23f01;outline-offset:3px;
}

.hz-lb-close{top:18px;right:24px;width:44px;height:44px;}
.hz-lb-prev,.hz-lb-next{
  top:50%;width:52px;height:52px;
  transform:translateY(-50%);
}
.hz-lb-prev{left:24px;}
.hz-lb-next{right:24px;}
.hz-lb-prev:hover,.hz-lb-next:hover{transform:translateY(-50%) scale(1.05);}

@media (max-width:780px){
  .hz-lb-overlay{padding:12px;}
  .hz-lb-img{max-height:65vh;}
  .hz-lb-close{top:8px;right:12px;}
  .hz-lb-counter{top:14px;left:16px;font-size:12px;}
  .hz-lb-prev{left:8px;width:42px;height:42px;}
  .hz-lb-next{right:8px;width:42px;height:42px;}
  .hz-lb-prev svg,.hz-lb-next svg{width:24px;height:24px;}
}

/* Visual cursor cue on triggers */
.hz-project-trigger{cursor:zoom-in;}

/* Project tiles are <button>s now — neutralize default button styling
   that would otherwise overlay across all sites */
button.hz-project-trigger{
  background:transparent;border:0;padding:0;font:inherit;color:inherit;
  text-align:inherit;width:100%;display:block;
}

/* Filter / Load More state */
.hz-project-hidden{display:none !important;}
.hz-project-filtered-out{display:none !important;}

/* Gallery 4×3 grid */
body.hz-site .hz-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
@media (max-width:1100px){body.hz-site .hz-grid-4{grid-template-columns:repeat(3,1fr);}}
@media (max-width:780px){body.hz-site .hz-grid-4{grid-template-columns:repeat(2,1fr);gap:14px;}}
@media (max-width:440px){body.hz-site .hz-grid-4{grid-template-columns:1fr;}}

.hz-gallery-loadmore{text-align:center;margin-top:32px;}
