.project-visual-first {
  padding: 97px 0 0;
  border-bottom: 1px solid hsl(var(--border));
}
.project-visual-inner { width:100%; max-width:none; margin:0; position:relative; }
.project-visual-stage {
  height: clamp(400px, 76svh, 960px);
  margin-top: 0;
  background: #161816;
  touch-action: pan-y;
}
.project-visual-stage img { object-fit: cover; }
.project-visual-stage img[src*="hill-park-stonebridge-20261015"],
.project-visual-stage img[src*="hill-park-family-physicians-20261015"],
.project-visual-stage img[src*="hill-park-hb-office-20261015"],
.project-visual-stage img[src*="hill-park-lake-office-20261015"] { object-position: center bottom; }
.project-visual-stage:not([data-testid="carousel-project-gallery"]) { height:auto; }
.project-visual-stage:not([data-testid="carousel-project-gallery"]) img { display:block;height:auto; }
.hb-gallery-counter-wrap { position:absolute;top:24px;left:40px;z-index:2;pointer-events:none; }
.hb-gallery-counter-wrap p { color:#fff;background:#0009;padding:8px 12px; }
.project-visual-inner > .mt-3 { padding:16px 24px 0; margin-top:0; }
.project-visual-inner > p { padding:0 24px 20px; }
.hb-project-announcements { display:flex;flex-wrap:wrap;gap:12px 28px;padding-top:16px; }
.hb-project-announcements a,.hb-project-announcement { display:inline-block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:5px;color:inherit; }
.hb-project-announcement { margin-top:24px; }
.hb-project-announcements a:focus-visible,.hb-project-announcement:focus-visible { outline:2px solid #c3cf21;outline-offset:5px; }
.project-detail-heading {
  max-width: 1150px;
  margin: 0 auto;
  padding: 48px 40px 0;
}
@media (max-width: 640px) {
  .project-visual-first { padding: 97px 0 0; }
  .project-visual-stage { height: clamp(280px, 54svh, 560px); }
  .hb-gallery-counter-wrap { left:20px;top:16px; }
  .project-detail-heading { padding: 32px 20px 0; }
}
@media (prefers-reduced-motion: reduce) {
  .project-visual-first * { transition-duration: 0.01ms !important; scroll-behavior: auto !important; }
}
