/* Three moving views of London; the journey brief remains in the foreground. */
.reference-home .ref-hero.london-hero {
  min-height: 99vh;
  min-height: 99svh;
}
.london-triptych {
  position: absolute;
  inset: 0;
  z-index: -2;
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 1px;
  background: rgba(244,239,226,.22);
}
.london-panel {
  position: relative;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  background: #15221f;
}
.london-poster, .london-panel-video {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--london-focus,center);
}
.london-poster { transition: none; }
.london-panel-video {
  opacity: 0;
  transition: opacity 500ms ease;
  pointer-events: none;
}
.london-panel-video.is-visible { opacity: 1; }
.london-hero::after {
  background: linear-gradient(90deg,rgba(5,10,10,.73),rgba(5,10,10,.44) 44%,rgba(5,10,10,.12)),linear-gradient(0deg,rgba(5,10,10,.88),rgba(5,10,10,.16) 62%,rgba(5,10,10,.3));
}
.london-hero .ref-hero-inner { position: relative; z-index: 1; }
.london-motion-control { z-index: 3; min-height: 44px; }
@media (max-width:880px) {
  .london-triptych {
    grid-template-columns: minmax(0,1fr);
    grid-template-rows: repeat(3,minmax(0,1fr));
  }
  .london-hero::after {
    background: linear-gradient(90deg,rgba(5,10,10,.4),rgba(5,10,10,.12)),linear-gradient(0deg,rgba(5,10,10,.94),rgba(5,10,10,.47) 51%,rgba(5,10,10,.12) 82%,rgba(5,10,10,.36));
  }
  .london-poster, .london-panel-video { object-position: center; }
}
@media (prefers-reduced-motion:reduce) {
  .london-panel-video { display: none; transition: none; }
  .london-motion-control { display: none; }
}
@media (max-width:600px) and (max-height:650px) {
  .london-hero .ref-hero-inner { padding-top: 100px; padding-bottom: 40px; }
  .london-hero .ref-hero-copy { margin-bottom: 1.25rem; }
  .london-hero .ref-kicker { margin-bottom: .9rem; }
  .london-hero .ref-hero-contact { margin-bottom: 1.1rem; }
  .london-hero .ref-hero-meta { padding-top: .8rem; }
}
