/* Home only: the photograph starts at the viewport edge, behind the header. */
.home-page .site-header {
  position: fixed;
  left: 50%;
  margin: 0;
  transform: translateX(-50%);
}

.home-page .hero {
  display: block;
  min-height: 0;
  padding: 0;
}

.home-page .hero > .container {
  width: 100%;
  max-width: none;
}

.home-page .hero-card {
  min-height: 0;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  gap: 0;
  padding: 112px max(24px, calc((100% - 1120px) / 2)) 36px;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  overflow: visible;
}

.home-page .hero-availability {
  position: relative;
  z-index: 1;
  margin: 0 0 20px;
  color: #fff;
  font-size: clamp(22px, 3vw, 32px);
  font-weight: 650;
  line-height: 1.2;
  letter-spacing: -.03em;
  word-spacing: 0.1em;
  text-align: center;
  text-wrap: balance;
}

.home-page .hero-card::after { border: 0; }
.home-page .search-panel { align-self: flex-start; }

@media (max-width: 840px) {
  .home-page .hero-card { padding: 96px 20px 28px; }
}

@media (max-width: 420px) {
  .home-page .hero-card { padding: 96px 14px 24px; }
}
