/* The public site uses only purposeful editorial photography for human stories. */
.hero-art {
  margin: 0;
}

.hero-art img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 62% center;
}

.section-photo {
  min-height: 410px;
  margin: 0;
  overflow: hidden;
  box-shadow: 14px 16px 0 rgba(11, 23, 41, .42);
}

.section-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 58% center;
}

.book-section .section-photo {
  min-height: 350px;
  box-shadow: 12px 14px 0 #d9cfbe;
}

.book-section .section-photo img {
  object-position: 67% center;
}

@media (max-width: 900px) {
  .section-photo { max-width: 580px; width: 100%; }
}

@media (max-width: 560px) {
  .section-photo { min-height: 300px; }
}

.photo-book {
  position: relative;
  min-height: 340px;
  overflow: hidden;
  padding: 0;
  color: #fff;
  box-shadow: 7px 9px 0 #dcd3c3;
}

.photo-book > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform .35s ease;
}

.photo-book::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(9, 22, 39, .28) 0%, rgba(9, 22, 39, .15) 34%, rgba(9, 22, 39, .92) 100%);
}

.photo-book:hover > img { transform: scale(1.035); }

.book-overlay {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 1.35rem;
}

.photo-book .book-overlay small,
.photo-book .book-overlay p,
.photo-book .book-overlay h3,
.photo-book .book-overlay b {
  color: #fff;
}

.photo-book .book-overlay small,
.photo-book .book-overlay b {
  font: 700 .61rem/1.35 var(--sans);
  letter-spacing: .12em;
  text-transform: uppercase;
}

.photo-book .book-overlay h3 {
  max-width: 10ch;
  margin: auto 0 .7rem;
  font: 600 clamp(1.75rem, 2.2vw, 2.35rem)/.97 var(--serif);
  letter-spacing: -.04em;
}

.photo-book .book-overlay p {
  margin: 0 0 1.25rem;
  font-size: .78rem;
  line-height: 1.35;
}
