/* ==========================================================================
   MBH - project details
   ========================================================================== */

.project-detail-hero {
  position: relative;
  min-height: min(760px, 92vh);
  overflow: hidden;
  background: var(--green-900);
}

.project-detail-hero__media {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.project-detail-hero__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(13, 36, 31, 0.9), rgba(13, 36, 31, 0.62) 46%, rgba(13, 36, 31, 0.2));
}

.project-detail-hero__media img {
  width: 100%;
  height: 112%;
  object-fit: cover;
}

.project-detail-hero__content {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: end;
  min-height: inherit;
  padding-block: calc(var(--header-h-sm) + clamp(62px, 8vw, 110px)) clamp(46px, 6vw, 76px);
}

.project-detail-hero .display {
  max-width: 12ch;
  color: var(--paper);
  font-size: clamp(2.4rem, 6vw, 5.2rem);
  line-height: 0.96;
}

.project-back {
  display: inline-block;
  margin-bottom: clamp(28px, 5vw, 70px);
  color: rgba(254, 254, 254, 0.72);
  font-size: var(--fs-small);
  font-weight: 600;
}

.project-back:hover { color: var(--paper); }

.project-detail-grid {
  display: grid;
  gap: clamp(34px, 5vw, 76px);
}

@media (min-width: 980px) {
  .project-detail-grid {
    grid-template-columns: minmax(220px, 0.32fr) minmax(0, 0.68fr);
    align-items: start;
  }

  .project-detail-grid--single {
    grid-template-columns: minmax(0, 860px);
  }
}

.project-facts {
  display: grid;
  gap: 14px;
}

@media (min-width: 980px) {
  .project-facts {
    position: sticky;
    top: calc(var(--header-h-sm) + 28px);
  }
}

.project-fact {
  padding: 22px 0;
  border-top: 1px solid var(--line);
}

.project-fact:last-child { border-bottom: 1px solid var(--line); }

.project-fact b {
  display: block;
  margin-bottom: 7px;
  color: var(--green-900);
  font-size: clamp(2rem, 3vw, 2.8rem);
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1;
}

.project-fact span {
  color: var(--muted);
  font-size: 0.75rem;
  line-height: 1.45;
}

.project-section {
  padding-bottom: clamp(38px, 5vw, 70px);
  border-bottom: 1px solid var(--line);
}

.project-section + .project-section {
  padding-top: clamp(38px, 5vw, 70px);
}

.project-section .h2 {
  max-width: 17ch;
  color: var(--green-900);
  font-size: clamp(1.75rem, 3vw, 2.7rem);
}

.project-section p {
  max-width: 76ch;
  margin-top: 18px;
  color: var(--muted);
  font-size: var(--fs-body);
  line-height: 1.75;
}

.project-gallery-wrap { background: var(--bone); }

.project-gallery {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(16px, 2vw, 24px);
}

@media (min-width: 680px) {
  .project-gallery { grid-template-columns: repeat(2, 1fr); }
}

@media (min-width: 1100px) {
  .project-gallery { grid-template-columns: repeat(3, 1fr); }
}

.project-gallery__item {
  overflow: hidden;
  background: var(--green-900);
}

.project-gallery__item img { transition: transform 1s var(--ease); }
.project-gallery__item:hover img { transform: scale(1.04); }

@media (max-width: 720px) {
  .project-detail-hero__media::after {
    background: linear-gradient(180deg, rgba(13, 36, 31, 0.5), rgba(13, 36, 31, 0.93));
  }

  .project-detail-hero .page-hero__meta { gap: 10px 18px; }
}