/* Shared location treatments: a quiet video layout and a bold chapter divider. */
.location-video-section { align-items: center; }
.location-video-section .shared-copy h2 { width: auto; margin-inline: 0; text-shadow: none; }
.location-video-section .shared-copy { min-width: 0; }
video#live-room-walkthrough,
video#dtla-walkthrough { filter: brightness(1.18) contrast(1.03); }
.page-dtla .testimonial-band { margin-top: 0; }
.page-highland .location-hero .hero-image { object-position: center; }
@media (min-width: 761px) {
  .page-highland .neighborhood-copy h2 { font-size: clamp(42px, 4.5vw, 68px); }
}

.location-marquee { position: relative; overflow: hidden; background: var(--yellow); color: var(--black); padding-block: 22px; }
.location-marquee-track { display: flex; width: max-content; }
.location-marquee-group { display: flex; flex: 0 0 auto; }
.location-marquee-group span { display: block; font-family: var(--display-font); font-size: clamp(30px, 3.7vw, 58px); line-height: 1.15; letter-spacing: -.045em; text-transform: uppercase; white-space: nowrap; }
.location-marquee-group span::after { content: "•"; display: inline-block; margin-inline: .55em; }
.location-marquee-track { animation: location-scroll 52s linear infinite; }
@keyframes location-scroll { to { transform: translateX(-50%); } }

/* Frame the supplied entrance photograph without modifying its original pixels. */
.neighborhood-photo .entrance-crop { position: relative; overflow: hidden; aspect-ratio: 3 / 5; max-width: 420px; margin-left: auto; }
.neighborhood-photo .entrance-crop img { position: absolute; width: 210%; max-width: none; height: auto; aspect-ratio: auto; left: -62%; top: -46%; }

@media (max-width: 760px) {
  .location-video-section .shared-copy { order: 0; }
  .location-marquee { padding-block: 20px; }
  .neighborhood-photo .entrance-crop { max-width: 100%; margin-inline: auto; }
}
@media (prefers-reduced-motion: reduce) {
  .location-marquee { padding: 22px var(--gutter); }
  .location-marquee .location-marquee-track { width: 100%; animation: none; }
  .location-marquee-group { flex: 1 1 auto; }
  .location-marquee-group span { padding: 0; white-space: normal; font-size: clamp(23px, 3vw, 42px); text-align: center; }
  .location-marquee-group span::after { display: none; }
  .location-marquee-group + .location-marquee-group,
  .location-marquee-group span + span { display: none; }
}
