/* Lưới dự án + album ảnh cho trang service — bê NGUYÊN danh sách của trang Our Projects (portfolio.html) sang.
   Kiểu thẻ và khung album sao theo .pf__grid / .vgcalbum của portfolio.html để hai trang trông như một.
   Dữ liệu thẻ (data-gallery, tên, thành phố) phải khớp portfolio.html — sửa bên đó thì sửa cả ở đây. */
.sc-projcat{ display:flex; align-items:baseline; gap:14px; margin:clamp(1.6rem,3vw,2.4rem) 0 0; }
.sc-projcat i{ width:28px; height:1px; background:#B4884D; flex:none; align-self:center; }
.sc-projcat b{ font-family:'Marcellus',serif; font-weight:400; font-size:clamp(24px,2.8vw,32px); color:#F2EFE6; letter-spacing:.02em; }
.sc-projcat span{ font-size:11px; letter-spacing:.22em; text-transform:uppercase; color:rgba(242,239,230,.45); margin-left:4px; }

.sc-work.sc-work--album{ gap:clamp(20px,2.6vw,34px); margin-top:clamp(20px,3vh,32px); }
.sc-work--album .sc-proj{ display:block; outline:none; }
.sc-work--album .sc-proj[data-gallery]{ cursor:pointer; }
.sc-work--album .shot{ border-radius:16px; }
.sc-work--album .shot img{ transition:transform .6s cubic-bezier(.22,1,.36,1),filter .6s ease; }
.sc-work--album .sc-proj:hover .shot img,
.sc-work--album .sc-proj:focus-visible .shot img{ transform:scale(1.06); filter:brightness(1.15); }
.sc-work--album .sc-proj:focus-visible .shot{ box-shadow:0 0 0 2px #E8C284; }
.sc-work--album .tag{ font-size:11px; letter-spacing:.24em; font-weight:600; color:#B4884D; margin:16px 0 7px; }
.sc-work--album h3{ font-family:'Marcellus',serif; font-weight:400; font-size:20px; color:#F2EFE6; letter-spacing:0; }
/* nhà chưa có ảnh: khung trống viền vàng mảnh + chữ "Photo coming soon", giống portfolio */
.sc-work--album .sc-proj--empty .shot{ display:flex; align-items:center; justify-content:center; text-align:center;
  border:1px solid rgba(180,136,77,.55); color:rgba(245,241,232,.92); font-size:1rem; line-height:1.5; }
/* hiện dần theo từng thẻ, lệch nhịp theo cột (lưới 20 thẻ quá cao để dùng một data-sc-reveal chung) */
.sc .sc-work--album .sc-proj[data-sc-reveal]:nth-child(3n+2){ transition-delay:.08s; }
.sc .sc-work--album .sc-proj[data-sc-reveal]:nth-child(3n){ transition-delay:.16s; }

/* ---------- album lightbox (sao từ .vgcalbum của portfolio.html) ---------- */
.vgcalbum{position:fixed;inset:0;z-index:400;background:rgba(8,13,26,.94);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  display:flex;align-items:center;justify-content:center;
  opacity:0;visibility:hidden;transition:opacity .35s ease,visibility 0s linear .35s}
.vgcalbum.is-open{opacity:1;visibility:visible;transition:opacity .35s ease}
.vgcalbum-frame{position:relative;width:min(1100px,92vw);max-height:88vh;display:flex;flex-direction:column;align-items:center;gap:1rem}
.vgcalbum-stage{position:relative;width:100%;flex:1;min-height:0;display:flex;align-items:center;justify-content:center}
.vgcalbum-img{max-width:100%;max-height:78vh;border-radius:10px;box-shadow:0 40px 90px -30px rgba(0,0,0,.8);
  opacity:0;transform:scale(.97);transition:opacity .3s ease,transform .3s ease}
.vgcalbum-img.is-shown{opacity:1;transform:none}
.vgcalbum-cap{color:#F5F1E8;text-align:center}
.vgcalbum-addr{font-family:'Marcellus',serif;font-size:1.3rem;letter-spacing:.02em}
.vgcalbum-count{margin-top:.3rem;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:#E8C284}
.vgcalbum-close,.vgcalbum-nav{display:flex;align-items:center;justify-content:center;
  background:rgba(245,241,232,.08);border:1px solid rgba(232,194,132,.5);color:#F5F1E8;border-radius:50%;
  cursor:pointer;transition:background .25s,transform .25s,border-color .25s}
.vgcalbum-close:hover,.vgcalbum-nav:hover{background:#E8C284;color:#0D1730;border-color:#E8C284}
.vgcalbum-close{position:fixed;top:24px;right:24px;width:40px;height:40px;z-index:2}
.vgcalbum-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px}
.vgcalbum-nav.prev{left:-8px}
.vgcalbum-nav.next{right:-8px}
.vgcalbum-nav[hidden],.vgcalbum-close[hidden]{display:none}
.vgcalbum-nav svg,.vgcalbum-close svg{width:20px;height:20px}
@media(max-width:760px){
  .vgcalbum-frame{width:94vw}
  .vgcalbum-close{top:14px;right:14px;width:36px;height:36px}
  .vgcalbum-nav{width:40px;height:40px}
  .vgcalbum-nav.prev{left:2px}.vgcalbum-nav.next{right:2px}
}
@media(prefers-reduced-motion:reduce){.vgcalbum,.vgcalbum-img,.sc-work--album .shot img{transition:none}}
