/* Photographic version: locally generated editorial images, not actual venues. */
.hero {
  position: relative;
  isolation: isolate;
  display: flex;
  min-height: 690px;
  padding: 70px 0 85px;
}
.hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  background-image: linear-gradient(90deg, #f8fbfcfa 0%, #f8fbfcf0 24%, #f8fbfcbf 40%, #f8fbfc0a 64%), var(--scene-image, url('/closing-workspace.jpg'));
  background-size: cover;
  background-position: center, center 55%;
}
.hero::after {
  content: "Illustrative AI-generated imagery";
  position: absolute;
  right: 0;
  bottom: 18px;
  font-size: 10px;
  letter-spacing: .04em;
  color: var(--ink);
  padding: 4px 10px;
  background: #f8fbfce8;
  border-radius: 4px;
}
.hero-copy { width: 52%; max-width: 590px; }
.hero h1 { font-size: clamp(48px, 5.3vw, 74px); }
.hero-copy > p { max-width: 410px; color: var(--ink); }
.hero-art { display: none; }
.hero-meta { color: var(--ink); }
.trust-strip { margin-top: 0; padding: 29px 0; }
.photo-story {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  margin: 0 0 80px;
  align-items: stretch;
  background: var(--stone);
  border-radius: 24px;
  overflow: hidden;
}
.photo-story > img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 420px;
  object-fit: cover;
  object-position: 55% center;
}
.photo-story-copy { padding: 55px 44px; align-self: center; }
.photo-story-copy h2 { font-size: clamp(32px,3.6vw,46px); }
.photo-story-copy p { margin: 23px 0 20px; font-size: 15px; line-height: 1.8; }
.photo-story-copy small { display: block; color: var(--muted); font-size: 10px; margin-top: 24px; }
.booking-section {
  background-image: linear-gradient(#d9efeced,#d9efecf7), var(--scene-image, url('/closing-workspace.jpg'));
  background-size: cover;
  background-position: center;
}
@media(max-width:1000px) {
  .hero-copy { width: 58%; }
  .hero::before { background-position: center, 58% center; }
  .photo-story-copy { padding: 35px 28px; }
}
@media(max-width:800px) {
  .hero { min-height: 940px; align-items: flex-start; padding: 45px 0 350px; }
  .hero-copy { width: 100%; max-width: 540px; }
  .hero::before {
    background-image: linear-gradient(180deg, #f8fbfc 0%, #f8fbfcfa 38%, #f8fbfcd9 51%, #f8fbfc00 68%), var(--scene-image, url('/closing-workspace.jpg'));
    background-size: cover, auto 550px;
    background-position: center, 65% bottom;
    background-repeat: no-repeat;
  }
  .photo-story { grid-template-columns: 1fr; margin-bottom: 55px; }
  .photo-story > img { min-height: 0; height: auto; aspect-ratio: 3/2; }
  .photo-story-copy { padding: 32px 26px; }
}
@media(max-width:450px) {
  .hero { min-height: 990px; }
  .hero h1 { font-size: 51px; }
  .hero::after { font-size: 8px; bottom: 10px; }
}
@media(forced-colors:active) {
  .hero::before { display: none; }
  .hero::after { display: none; }
  .hero { min-height: auto; padding-bottom: 45px; }
}
