.pj-hero{position:relative;min-height:78svh;background:#0b0b0c;color:#fff;overflow:hidden;display:flex;align-items:flex-end}
.pj-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.62}
.pj-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.85) 0%,rgba(0,0,0,.35) 55%,rgba(0,0,0,.25) 100%)}
.pj-hero-inner{position:relative;z-index:2;padding:120px 0 64px;text-align:center}
.pj-hero .back-link{display:table;margin:0 auto 22px;color:rgba(255,255,255,.7);font-weight:800}
.pj-hero .pill{display:inline-flex;padding:10px 14px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.78);margin:0 auto}
.pj-hero h1{font-size:clamp(44px,8vw,104px);line-height:.92;letter-spacing:-.06em;margin:22px 0 0}
.pj-sub{font-size:clamp(16px,2vw,21px);color:rgba(255,255,255,.78);margin:18px auto 0;max-width:760px}
.pj-intro{max-width:860px;text-align:center}.pj-intro .lead{margin-left:auto;margin-right:auto}
.pj-gallery-main{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);background:#111;aspect-ratio:16/9}
.pj-gallery-main img{width:100%;height:100%;object-fit:cover}
.pj-thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:14px}
.pj-thumb{padding:0;border:2px solid transparent;border-radius:18px;overflow:hidden;background:none;cursor:pointer;aspect-ratio:4/3;opacity:.7;transition:.2s var(--ease)}
.pj-thumb img{width:100%;height:100%;object-fit:cover}.pj-thumb:hover,.pj-thumb.is-active{opacity:1;border-color:var(--gold)}
.pj-body{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;align-items:start}
.pj-summary{background:#ecebe7;border-radius:var(--radius-lg);padding:34px;position:sticky;top:96px}
.pj-summary dl{margin:18px 0 26px}.pj-summary dt{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:800;margin-top:16px}
.pj-summary dd{margin:6px 0 0;font-weight:700;line-height:1.5;color:#1c1f24}
.pj-desc h2{font-size:clamp(26px,3vw,36px);letter-spacing:-.04em;margin:0 0 14px}.pj-desc h2:not(:first-child){margin-top:42px}
.pj-desc p{font-size:17px;line-height:1.8;color:#454b54;margin:0}
.pj-features{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.pj-features li{background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px 20px;line-height:1.65;color:#454b54}
.pj-features strong{display:block;color:#111;font-size:17px;margin-bottom:4px}
.pj-bottom{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pj-bottom-item{border-radius:28px;overflow:hidden;aspect-ratio:3/4;background:#ddd}.pj-bottom-item img{width:100%;height:100%;object-fit:cover}
.project-grid .project-card img{width:100%;height:310px;object-fit:cover}
@media(max-width:1060px){.pj-body{grid-template-columns:1fr}.pj-summary{position:static}.pj-thumbs{grid-template-columns:repeat(4,1fr)}}
@media(max-width:760px){.pj-hero{min-height:70svh}.pj-thumbs{grid-template-columns:repeat(3,1fr)}.pj-bottom{grid-template-columns:1fr 1fr}}
