.public-top{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#17283b;color:#fff;padding:15px max(22px,calc((100vw - 1260px)/2))}.public-top a{text-decoration:none;color:#fff}.public-brand{display:flex;align-items:center;gap:10px;font-size:24px}.public-top nav{display:flex;gap:24px}.public-foot{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;background:#17283b;color:#d9e6f1;padding:25px max(22px,calc((100vw - 1260px)/2));font-size:13px}.public-foot a{color:inherit}
.jobsite-public-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.jobsite-public-photo-card{min-width:0}.jobsite-public-photo-link{position:relative;display:block;height:365px;overflow:hidden;border-radius:15px;background:#12293b;color:#fff;text-decoration:none;box-shadow:0 14px 34px #12293b2b}.jobsite-public-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .8s ease}.jobsite-public-photo.is-current{opacity:1}.jobsite-public-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,13,25,.15) 18%,rgba(4,13,25,.90) 100%)}.jobsite-public-card-copy{position:absolute;bottom:0;left:0;right:0;padding:22px;z-index:2;text-shadow:0 2px 9px rgba(0,0,0,.86);display:grid;gap:9px}.jobsite-public-business{display:flex;gap:10px;align-items:center;font-weight:800;font-size:17px}.jobsite-public-business img{width:38px;height:38px;object-fit:contain;border-radius:7px;background:#fff;padding:2px;flex:none}.jobsite-public-project-name{font-size:24px;line-height:1.15;font-weight:800}.jobsite-public-project-description{font-size:14px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.jobsite-public-view{font-size:12px;color:#ffba65;font-weight:800}.jobsite-public-photo-link:hover{transform:translateY(-2px);box-shadow:0 20px 44px #12293b40}
@media(max-width:900px){.jobsite-public-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.jobsite-public-photo-grid{grid-template-columns:1fr}.public-top{flex-wrap:wrap}.jobsite-public-photo-link{height:330px}}@media(prefers-reduced-motion:reduce){.jobsite-public-photo{transition:none}}
