/* Diligent Construction — project-only finishing adjustments.
   Affects Projects listing cards and the Back to All Projects action on detail pages.
   No shared website CSS or project image/media assets are changed. */

/* Smaller but still architectural listing: keep 2 desktop columns, compact the vertical rhythm. */
@media (min-width:1001px) {
  .diligent-projects-index .catalog .container {
    width:min(1168px,calc(100% - 84px))!important;
  }
  .diligent-projects-index .project-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:32px!important;
    row-gap:49px!important;
  }
}
@media (min-width:761px) and (max-width:1000px) {
  .diligent-projects-index .project-grid {
    column-gap:24px!important;
    row-gap:43px!important;
  }
}
@media (max-width:760px) {
  .diligent-projects-index .project-grid {
    row-gap:39px!important;
  }
}
/* Consistent soft-square corners on ALL 10 main project photo frames. */
.diligent-projects-index .project-tile .project-cover {
  border-radius:10px!important;
  overflow:hidden!important;
  isolation:isolate;
  box-shadow:none!important;
  border:0!important;
}
/* Never sacrifice image edges for a smaller card. The frame adapts to width,
   while every original photo retains its complete, undistorted proportions. */
.diligent-projects-index .project-tile .project-cover img {
  object-fit:contain!important;
  object-position:center!important;
}
.diligent-projects-index .project-tile .sector {
  margin-bottom:12px!important;
}
.diligent-projects-index .project-tile .where {
  margin-top:13px!important;
  margin-bottom:6px!important;
}
@media (min-width:1001px) {
  .diligent-projects-index .project-tile h3 {
    font-size:clamp(21px,1.85vw,27px)!important;
  }
}
/* Subtle action placed over the charcoal/photo hero, below the sticky header.
   Absolute placement intentionally leaves native hero photograph sizing intact. */
.diligent-project-detail .detail-hero .project-top-back {
  position:absolute;
  z-index:30;
  top:calc(var(--header-overlay-height,72px) + 15px);
  left:max(22px,calc((100% - 1320px) / 2));
  display:inline-flex;
  align-items:center;
  gap:10px;
  width:max-content;
  max-width:calc(100% - 44px);
  padding:10px 14px;
  border:1px solid rgba(255,255,255,.26);
  border-radius:5px;
  background:rgba(21,22,23,.78);
  color:#f7f5f0;
  font-family:inherit;
  font-size:12px;
  font-weight:600;
  letter-spacing:.075em;
  line-height:1.35;
  text-decoration:none;
  -webkit-backdrop-filter:blur(7px);
  backdrop-filter:blur(7px);
  transition:background-color .22s ease,border-color .22s ease,color .22s ease;
}
.diligent-project-detail .detail-hero .project-top-back:hover,
.diligent-project-detail .detail-hero .project-top-back:focus-visible {
  color:#fff;
  border-color:#d5ab64;
  background:rgba(14,15,16,.94);
}
.diligent-project-detail .detail-hero .project-top-back:focus-visible {
  outline:2px solid #d5ab64;
  outline-offset:3px;
}
.diligent-project-detail .detail-hero .project-top-back .project-back-arrow {
  font-size:18px;
  line-height:1;
  font-weight:400;
  color:#d5ab64;
}
@media (max-width:760px) {
  .diligent-project-detail .detail-hero .project-top-back {
    top:calc(var(--header-overlay-height,72px) + 10px);
    left:20px;
    font-size:11px;
    padding:9px 12px;
  }
}
@media (prefers-reduced-motion:reduce) {
  .diligent-project-detail .detail-hero .project-top-back {transition:none!important}
}
