/* ============================================================
   Moment Group — New Projects pages (list + 9 detail pages)
   Shared by site/projects.html and site/projects/*.html
   ============================================================ */

/* ---------- list page (projects.html) ---------- */
.plist-note{color:var(--grey-blue);font-size:14.5px;letter-spacing:.06em;margin-bottom:30px}
.plist-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.plist-card{display:block;background:#fff;overflow:hidden;transition:box-shadow .4s,transform .4s;position:relative}
.plist-card:hover{box-shadow:0 26px 60px rgba(31,35,38,.13);transform:translateY(-4px)}
.plist-visual{position:relative;height:230px;overflow:hidden;background:var(--navy)}
.plist-visual img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.plist-card:hover .plist-visual img{transform:scale(1.06)}
.plist-body{padding:26px 28px 30px}
.plist-body h3{font-size:22px;margin-bottom:4px;color:var(--navy)}
.plist-addr{color:var(--grey-blue);font-size:14px;margin-bottom:12px}
.plist-body p{color:var(--grey-blue);font-size:14.5px;margin-bottom:16px}
.plist-more{display:inline-flex;align-items:center;gap:8px;color:var(--gold);font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:500}
.plist-card:hover .plist-more{color:var(--gold-dark)}
@media(max-width:1080px){.plist-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.plist-grid{grid-template-columns:1fr}}

/* ---------- detail pages (projects/*.html) ---------- */
.page-hero .ph-addr{color:rgba(245,246,244,.85);font-size:16px;display:flex;align-items:center;gap:10px}
.page-hero .ph-addr svg{flex-shrink:0}

.pd-overview{display:grid;grid-template-columns:7fr 4fr;gap:60px;align-items:start}
.pd-desc h2{font-size:clamp(26px,2.8vw,38px);margin:18px 0 20px}
.pd-desc p{color:var(--grey-blue);font-size:16px;margin-bottom:16px}
.pd-info{background:#fff;border-top:3px solid var(--gold);box-shadow:0 16px 44px rgba(31,35,38,.08);padding:34px 32px;position:sticky;top:110px}
.pd-info h3{font-size:20px;margin-bottom:18px;color:var(--navy)}
.pd-info dl{margin-bottom:24px}
.pd-info dt{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--grey-blue);margin-bottom:3px}
.pd-info dd{font-size:16.5px;color:var(--navy);font-weight:500;margin-bottom:16px}
.pd-info .btn{width:100%;justify-content:center}
@media(max-width:900px){.pd-overview{grid-template-columns:1fr}.pd-info{position:static}}

.pd-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pd-gallery a{display:block;height:250px;overflow:hidden;position:relative}
.pd-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.pd-gallery a:hover img{transform:scale(1.05)}
.pd-gallery a.wide{grid-column:span 2}
@media(max-width:900px){.pd-gallery{grid-template-columns:1fr 1fr}.pd-gallery a.wide{grid-column:span 2}}
@media(max-width:560px){.pd-gallery{grid-template-columns:1fr}.pd-gallery a.wide{grid-column:span 1}.pd-gallery a{height:220px}}

.pd-docs{display:flex;gap:16px;flex-wrap:wrap;align-items:center}
.doc-btn{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--gold);color:var(--navy);padding:12px 24px;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;transition:all .3s}
.doc-btn:hover{background:var(--gold);color:var(--ink)}
.doc-btn.ghost{border-color:var(--line);color:var(--grey-blue)}
.doc-btn.ghost:hover{border-color:var(--gold);color:var(--navy);background:transparent}
