/* Project galleries: keep every image fully visible inside its frame. */
.project-photos{
  display:grid;
  overflow:hidden;
  background:#111 !important;
  align-items:center;
  justify-items:center;
}
.project-photos img{
  width:100% !important;
  height:100% !important;
  min-width:0;
  min-height:0;
  display:block;
  object-fit:contain !important;
  object-position:center !important;
}
.project-photos.recon-photos{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  grid-template-rows:1fr !important;
}
.project-photos.access-photos,
.project-photos.cafe-renovation-photos,
.project-photos.outskirt-cctv-photos,
.project-photos.warehouse-wifi-photos{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  grid-template-rows:1fr !important;
}
.project-photos.office-cabling-photos{
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
}
.project-photos.single-photo{
  grid-template-columns:1fr !important;
}
.project-photos.single-photo img{
  object-fit:contain !important;
}
.project-photos.server-labelled{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:3px;
  background:#111 !important;
}
.server-shot{position:relative;overflow:hidden;min-width:0;background:#111;}
.server-shot img{width:100%;height:100%;object-fit:contain !important;object-position:center !important;}
.server-shot .label{position:absolute;z-index:3;padding:5px 9px;border-radius:6px;color:#fff;font:700 12px/1.1 Arial,sans-serif;box-shadow:0 2px 7px rgba(0,0,0,.28);letter-spacing:.02em;}
.server-shot .label.rack{top:8px;left:8px;background:#e52b2b;border:2px solid #ff5b5b;}
.server-shot .label.server{top:42%;right:7px;background:#0967df;border:2px solid #35a0ff;}
.server-shot .label.ups{bottom:10px;left:8px;background:#ef7900;border:2px solid #ffad38;}
.server-shot:after{content:"";position:absolute;inset:5px;border:2px solid rgba(229,43,43,.9);border-radius:4px;pointer-events:none;}
/* Standard Mobit gold hero badge */
.projects-intro .eyebrow{
  display:inline-block !important;
  width:max-content !important;
  max-width:100% !important;
  margin:0 0 28px !important;
  padding:13px 18px !important;
  border:1px solid #f1ca55 !important;
  border-radius:9px !important;
  background:linear-gradient(180deg,#fff1a8 0%,#ffe07a 100%) !important;
  color:#17120a !important;
  font-size:12px !important;
  font-weight:900 !important;
  letter-spacing:.03em !important;
  line-height:1.2 !important;
  box-shadow:0 7px 18px rgba(151,105,0,.20) !important;
}
@media(max-width:620px){
  .server-shot .label{font-size:10px;padding:4px 6px}
  .server-shot .label.server{top:45%;right:4px}
  .projects-intro .eyebrow{margin-bottom:22px !important;padding:11px 14px !important;font-size:10px !important}
}
