.listings-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 248px;
  padding: 40px 28px 44px;
  border-radius: 14px;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.14);
  box-shadow:
    0 10px 36px rgba(42, 31, 24, 0.16),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
  background: var(--ink);
}
.listings-hero-media {
  position: absolute;
  inset: 0;
  z-index: 0;
  background: var(--listings-hero-bg-image, none) center center / cover no-repeat;
  transform: scale(1.04);
}
.listings-hero-scrim {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(125deg, rgba(45, 31, 24, 0.72) 0%, rgba(42, 31, 24, 0.35) 45%, rgba(20, 15, 12, 0.58) 100%),
    linear-gradient(105deg, rgba(20, 15, 12, 0.4) 0%, transparent 55%),
    linear-gradient(to top, rgba(20, 15, 12, 0.42) 0%, rgba(20, 15, 12, 0.12) 32%, transparent 62%);
}
.listings-hero-ambient {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  overflow: hidden;
  border-radius: inherit;
}
.listings-hero-blob {
  position: absolute;
  border-radius: 50%;
  filter: blur(48px);
  opacity: 0.24;
  mix-blend-mode: soft-light;
}
.listings-hero-blob--1 {
  width: min(42vw, 320px);
  height: min(42vw, 320px);
  left: -18%;
  top: -20%;
  background: radial-gradient(circle at 35% 40%, rgba(232, 130, 110, 0.85) 0%, rgba(196, 93, 72, 0.35) 45%, transparent 72%);
}
.listings-hero-blob--2 {
  width: min(34vw, 240px);
  height: min(34vw, 240px);
  right: -8%;
  bottom: -8%;
  background: radial-gradient(circle at 62% 58%, rgba(232, 130, 110, 0.35) 0%, rgba(91, 59, 47, 0.2) 42%, transparent 70%);
}
.listings-hero-blob--3 {
  width: min(34vw, 260px);
  height: min(34vw, 260px);
  left: 52%;
  top: 35%;
  background: radial-gradient(circle at 50% 50%, rgba(252, 217, 204, 0.72) 0%, rgba(232, 130, 110, 0.2) 55%, transparent 76%);
}
.listings-hero--ambient-1 .listings-hero-blob--1 { transform: translate(-1vw, 1vh); }
.listings-hero--ambient-1 .listings-hero-blob--2 { transform: translate(1vw, -1vh); }
.listings-hero--ambient-1 .listings-hero-blob--3 { transform: translate(-2vw, 2vh); }
.listings-hero--ambient-2 .listings-hero-blob--1 { transform: translate(2vw, -1vh); }
.listings-hero--ambient-2 .listings-hero-blob--2 { transform: translate(-1.5vw, 1.5vh); }
.listings-hero--ambient-2 .listings-hero-blob--3 { transform: translate(1.5vw, -1vh); }
.listings-hero--ambient-3 .listings-hero-blob--1 { transform: translate(1vw, 2vh); }
.listings-hero--ambient-3 .listings-hero-blob--2 { transform: translate(2vw, 0.5vh); }
.listings-hero--ambient-3 .listings-hero-blob--3 { transform: translate(-3vw, -1vh); }
.listings-hero-glass {
  position: absolute;
  inset: -3%;
  z-index: 3;
  pointer-events: none;
  border-radius: inherit;
  -webkit-backdrop-filter: blur(8px) saturate(105%);
  backdrop-filter: blur(8px) saturate(105%);
  background: rgba(20, 15, 12, 0.03);
  mask-image: radial-gradient(
    ellipse 108% 120% at 50% -8%,
    transparent 0%,
    rgba(0, 0, 0, 0.14) 44%,
    rgba(0, 0, 0, 0.2) 68%,
    rgba(0, 0, 0, 0.06) 86%,
    transparent 100%
  );
  -webkit-mask-image: radial-gradient(
    ellipse 108% 120% at 50% -8%,
    transparent 0%,
    rgba(0, 0, 0, 0.14) 44%,
    rgba(0, 0, 0, 0.2) 68%,
    rgba(0, 0, 0, 0.06) 86%,
    transparent 100%
  );
}
.listings-hero-copy {
  position: relative;
  z-index: 4;
}
.listings-hero .hero-breadcrumb {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 2px 2px;
  margin: 0 0 14px;
  padding: 5px 5px 5px 11px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.2);
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.12);
  font-family: var(--sans);
  font-size: 0.6875rem;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}
.listings-hero .hero-breadcrumb a {
  color: rgba(255, 255, 255, 0.88);
  text-decoration: none;
  transition: color 0.15s;
}
.listings-hero .hero-breadcrumb a:hover {
  color: #fff;
}
.listings-hero .hero-breadcrumb .sep {
  margin: 0 8px;
  color: rgba(255, 255, 255, 0.38);
  font-weight: 400;
  font-size: 0.75rem;
  letter-spacing: 0;
  text-transform: none;
}
.listings-hero .hero-breadcrumb strong {
  color: #fff;
  font-weight: 600;
  letter-spacing: 0.03em;
  padding-right: 10px;
}
.listings-hero h1 {
  margin: 0;
  color: #fff;
  font-family: var(--serif);
  font-weight: 600;
  font-style: normal;
  font-variation-settings: "opsz" 72, "SOFT" 0, "WONK" 0;
  font-feature-settings: "ss01" off, "ss02" off, "ss03" off, "ss04" off;
  letter-spacing: -0.022em;
  font-size: clamp(1.625rem, 4vw, 2.5rem);
  line-height: 1.08;
  text-shadow: 0 2px 28px rgba(0, 0, 0, 0.28);
}
.listings-hero h1 em {
  font-style: italic;
  color: #fcd9cc;
  font-weight: 500;
  font-size: 0.96em;
}
.listings-hero p {
  margin: 10px 0 0;
  color: #f0d4c8;
  font-weight: 400;
  font-size: 0.8125rem;
  line-height: 1.5;
  max-width: 34rem;
  opacity: 0.95;
}
@media (max-width: 640px) {
  .listings-hero {
    min-height: 0;
    padding: 28px 18px 34px;
  }
  .listings-hero-glass {
    -webkit-backdrop-filter: blur(6px) saturate(102%);
    backdrop-filter: blur(6px) saturate(102%);
  }
  .listings-hero-blob {
    filter: blur(40px);
    opacity: 0.2;
  }
}
