/* Homepage finishing pass. Loaded after the page's existing styles. */
/* Give the unclassed introductions the same separation as .section__lead. */
#top .section__head > .section__title + p {
  margin-top: 18px;
}
#top .section__head > .section__label {
  line-height: 1.65;
}
#top .section__head > p:not(.section__label) {
  text-wrap: pretty;
}
#top #process-movie .section__head {
  text-align: center;
  margin-inline: auto;
}
#top #process-movie .section__head > p:not(.section__label) {
  text-wrap: balance;
}
/* Caption clearance is part of the image row, so the three lead cards align. */
#clients > .shell > .client-case-grid > .client-case-card > figure {
  margin-bottom: 44px;
}
#clients .case-image-note {
  right: 0;
  padding-top: 8px;
}
#clients > .shell > .client-case-grid > .client-case-card > h3 {
  min-height: 3.3em;
}
/* Keep small labels and lengthy copy from introducing arbitrary grid widths. */
#top .decision-grid > article,
#top .final-reasons > article,
#top .illustrated-flow > li {
  min-width: 0;
}
#top .final-reasons > article > span,
#top .decision-grid > article > span {
  line-height: 1.65;
}
#top .clothing-transcript li:last-child {
  margin-bottom: 0;
}
#top .illustrated-flow li:last-child {
  border-bottom: 0;
}
/* 761–900px used to retain three narrow text columns (roughly 200px each). */
@media (min-width: 761px) and (max-width: 900px) {
  #top .final-reasons,
  #top .decision-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }
  #top .final-reasons h3.reason-title {
    font-size: 36px;
    margin-block: 16px 14px;
  }
  #top .final-reasons .reason-detail-link {
    margin-top: 4px;
    padding-top: 12px;
  }
  #top .contact-detail-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
  #top .contact-project-photo > img {
    max-height: 310px;
  }
}
@media (max-width: 640px) {
  #clients > .shell > .client-case-grid > .client-case-card > figure {
    margin-bottom: 0;
  }
  #clients > .shell > .client-case-grid > .client-case-card > figure:has(.case-image-note) {
    margin-bottom: 44px;
  }
  #clients > .shell > .client-case-grid > .client-case-card > h3 {
    min-height: 0;
  }
}
@media (max-width: 640px) {
}
@media (max-width: 760px) {
  #top .section__head > .section__title + p {
    margin-top: 16px;
  }
  #top .hero__actions .hero-case-link {
    padding-block: 10px;
  }
  #top .clothing-movie-actions > span {
    width: 100%;
    text-align: center;
  }
}

/* Equal image geometry for product / furniture / space. */
#next-use .next-use-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
#next-use .next-use-card--product{border:1px solid #dbe3eb;box-shadow:inset 0 3px 0 #26466b}
#next-use .next-use-card figure{width:100%;height:auto;min-height:0;aspect-ratio:3/2;align-self:start}
#next-use .next-use-card figure img{display:block;width:100%;height:100%}
@media(max-width:800px){
 #next-use .next-use-grid{grid-template-columns:minmax(0,1fr)}
 #next-use .next-use-card{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
}
