/* A single, reversible editorial scene. The document keeps its native scroll. */
.page-shell:has(.property-scroll) { overflow: clip; }
.marquee-section.property-scroll {
  display: block;
  position: relative;
  height: 220svh;
  min-height: 0;
  overflow: visible;
  background: var(--brand-primary);
}
.property-scroll > .marquee-track { display: none; }
.property-scroll__stage {
  position: sticky;
  top: 0;
  height: 100svh;
  min-height: 420px;
  overflow: clip;
  isolation: isolate;
}
.property-scroll__photo,
.property-scroll__shade {
  position: absolute;
  inset: 0;
}
.property-scroll__photo {
  clip-path: inset(20% 32% round 2px);
  overflow: hidden;
}
.property-scroll__photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.property-scroll__shade {
  background: var(--brand-text);
  opacity: .35;
}
.property-scroll__title {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: .06em;
  margin: 0;
  padding: 0 var(--page-pad);
  color: var(--brand-background);
  font-family: "Bw Gradual", sans-serif;
  font-size: clamp(48px, 7.5vw, 132px);
  font-weight: 300;
  line-height: 1.08;
  letter-spacing: -.045em;
  text-align: center;
}
.property-scroll__title strong,
.property-scroll__title span { display: block; }
.property-scroll__title strong { font-weight: 700; }
@media (max-width: 600px) {
  .marquee-section.property-scroll { height: 190svh; }
  .property-scroll__title { font-size: clamp(36px, 8.6vw, 52px); }
}
@media (prefers-reduced-motion: reduce) {
  .marquee-section.property-scroll { height: 85svh; min-height: 480px; }
  .property-scroll__stage { position: relative; height: 100%; }
  .property-scroll__photo { clip-path: none !important; }
  .property-scroll__title strong,
  .property-scroll__title span,
  .property-scroll__photo img { transform: none !important; }
  .property-scroll__shade { opacity: .5 !important; }
}
