/* ===== Trang Công trình (cong-trinh.html) ===== */

/* --- Danh sách công trình --- */
.pcard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;margin-top:40px;}
.pcard{display:block;text-decoration:none;color:inherit;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:rgba(236,231,214,0.02);transition:transform .35s ease,border-color .35s;}
.pcard:hover{transform:translateY(-4px);border-color:rgba(214,176,123,0.5);}
.pcard-media{aspect-ratio:3/2;overflow:hidden;background:#1b2a27;}
.pcard-media img{width:100%;height:100%;object-fit:cover;filter:brightness(.9);transition:transform .6s ease,filter .5s;}
.pcard:hover .pcard-media img{transform:scale(1.05);filter:brightness(1);}
.pcard-body{padding:22px 24px 26px;}
.pcard-body h3{font-family:'Newsreader',serif;font-weight:300;font-size:26px;margin:6px 0 10px;}
.pcard-body p{font-size:14px;line-height:1.6;color:var(--dim);}

/* --- Chi tiết công trình --- */
.proj-hero{margin-top:24px;border-radius:16px;overflow:hidden;background:#1b2a27;}
.proj-hero img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;}
.proj-head{display:grid;grid-template-columns:1fr 1.1fr;gap:32px;align-items:start;margin:38px 0 8px;}
.proj-meta .k{font-size:11px;letter-spacing:2.5px;text-transform:uppercase;color:var(--copper-2);margin-bottom:12px;}
.proj-meta h1{font-family:'Newsreader',serif;font-weight:300;font-size:clamp(30px,4.4vw,52px);line-height:1.05;}
.proj-credit{display:inline-block;margin-top:16px;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--dim);border:1px solid var(--line);border-radius:20px;padding:7px 15px;}
.proj-desc{font-size:16px;line-height:1.75;color:rgba(236,231,214,0.88);}
.proj-cta{display:inline-block;margin-top:20px;font-size:14px;letter-spacing:.5px;color:var(--copper-2);border-bottom:1px solid rgba(214,176,123,0.4);padding-bottom:3px;text-decoration:none;transition:color .3s;}
.proj-cta:hover{color:var(--cream);}

/* --- Thư viện ảnh --- */
.gal-sec{margin-top:56px;}
.gal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;margin-top:22px;}
.gal-item{padding:0;border:none;margin:0;background:#1b2a27;border-radius:10px;overflow:hidden;cursor:pointer;aspect-ratio:4/3;display:block;}
.gal-item img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.92);transition:transform .5s ease,filter .4s;}
.gal-item:hover img{transform:scale(1.06);filter:brightness(1.04);}

/* --- Lightbox --- */
.lightbox{position:fixed;inset:0;z-index:2000;display:none;align-items:center;justify-content:center;background:rgba(8,12,11,0.95);backdrop-filter:blur(6px);}
.lightbox.on{display:flex;}
.lb-img{max-width:90vw;max-height:86vh;object-fit:contain;border-radius:6px;box-shadow:0 20px 70px rgba(0,0,0,0.6);}
.lb-btn{position:absolute;background:rgba(236,231,214,0.08);color:var(--cream);border:1px solid rgba(236,231,214,0.18);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .25s;}
.lb-btn:hover{background:rgba(236,231,214,0.2);}
.lb-close{top:22px;right:22px;width:46px;height:46px;font-size:20px;}
.lb-prev,.lb-next{top:50%;transform:translateY(-50%);width:54px;height:54px;font-size:30px;line-height:1;}
.lb-prev{left:24px;}
.lb-next{right:24px;}
.lb-count{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);font-size:13px;letter-spacing:1px;color:var(--dim);}

@media(max-width:860px){
  .pcard-grid{grid-template-columns:1fr;gap:20px;}
  .proj-head{grid-template-columns:1fr;gap:18px;margin-top:26px;}
  .proj-hero img{aspect-ratio:4/3;}
  .gal-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:7px;}
  .lb-close{top:14px;right:14px;width:40px;height:40px;}
  .lb-prev{left:10px;}.lb-next{right:10px;}
  .lb-prev,.lb-next{width:44px;height:44px;font-size:26px;}
}
