/* Full-width photography, with readable content above the crossfade. */
.hero--slideshow {
  min-height: max(660px, calc(100svh - 158px));
  display: flex;
  align-items: center;
  isolation: isolate;
}
.hero-slideshow { position: absolute; inset: 0; z-index: 0; overflow: hidden; }
.hero-slide {
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: var(--hero-focus, 50% 50%);
  opacity: 0;
  z-index: 0;
  transition: opacity 1s ease-in-out;
}
.hero-slide.is-previous { opacity: 1; z-index: 1; }
.hero-slide.is-active { opacity: 1; z-index: 2; }
.hero--slideshow .hero-shade {
  z-index: 1;
  background: linear-gradient(90deg, #08190fe8 0%, #08190fd4 22%, #08190f96 43%, #08190f30 68%, #08190f12),
    linear-gradient(0deg, #08190fe0, #08190f00 55%);
  pointer-events: none;
}
.hero--slideshow .hero-content { z-index: 2; padding-top: 64px; padding-bottom: 136px; }
.hero--slideshow .hero-copy { color: #f0f3ea; }
.hero--slideshow .hero-price > span { color: #dce6d7; }
.hero--inner .hero-content { padding-top: 38px; padding-bottom: 132px; }
.hero--inner .page-hero-copy { max-width: 720px; }
.hero--inner .breadcrumbs { color: #dce6d7; margin-bottom: 30px; }
.hero--inner h1 { font-size: clamp(70px, 7vw, 108px); line-height: .94; margin-bottom: 26px; }
.hero--inner .page-intro { max-width: 580px; color: #f0f3ea; }
.hero--slideshow .field-label { z-index: 2; bottom: 106px; }
.hero--slideshow .scroll-cue { z-index: 2; }
@media (max-width: 1000px) {
  .hero--slideshow .field-label { display: none; }
}
@media (max-width: 700px) {
  .hero--slideshow { min-height: 0; flex-direction: column; align-items: stretch; }
  .hero-slideshow { position: relative; inset: auto; width: 100%; aspect-ratio: 4 / 3; flex: none; order: 0; background: var(--forest-deep); }
  .hero-slide { object-fit: contain; object-position: center; }
  .hero--slideshow .hero-content { order: 1; padding-top: 32px; padding-bottom: 42px; }
  .hero--slideshow .hero-shade { display: none; }
  .hero--slideshow h1 { font-size: clamp(60px, 18vw, 90px); }
  .hero--slideshow .eyebrow { margin-bottom: 22px; }
  .hero--inner h1 { font-size: clamp(46px, 12.8vw, 78px); }
  .hero--inner .breadcrumbs { margin-bottom: 26px; }
  .hero--inner .page-intro { font-size: 15px; }
  .hero--slideshow .scroll-cue { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-slide { transition: none; }
}
