/* O-09 isolated preview: Largo Local Homes — photo quartet | muted map + static chip cloud.
   Chips/ZIPs/map SVG from live #neighborhoods only. No pins, clicks, or invented geo.
   Not deployed. */

html body.t-city #local-homes.o9-on .o9-split {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr) !important;
  gap: 28px !important;
  align-items: stretch !important;
  margin-top: 8px !important;
}

html body.t-city #local-homes.o9-on .o9-homes {
  min-width: 0 !important;
  height: 100% !important;
}

html body.t-city #local-homes.o9-on .o9-homes .lh-grid {
  margin-top: 0 !important;
  height: 100% !important;
}

/* Desktop/Tesla: full-height rail — tall map (~65%) + solid chip footer (~35%) */
html body.t-city #local-homes.o9-on .o9-locale {
  position: relative !important;
  min-width: 0 !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: #e8eef8 !important;
  border: 1px solid rgba(0, 5, 62, 0.08) !important;
  align-self: stretch !important;
  height: 100% !important;
  min-height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}

html body.t-city #local-homes.o9-on .o9-map {
  position: relative !important;
  inset: auto !important;
  z-index: 0 !important;
  pointer-events: none !important;
  flex: 1 1 auto !important;
  min-height: 450px !important;
  /* ~65% of a ~860px rail; grows with taller card stacks */
  flex-basis: 65% !important;
  opacity: 0.78 !important;
  filter: saturate(0.58) contrast(0.94) brightness(1.05) !important;
  background: #d9e4f4 !important;
  overflow: hidden !important;
}

html body.t-city #local-homes.o9-on .o9-map-desk {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
}

html body.t-city #local-homes.o9-on .o9-map svg {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  /* fill pane without geo distortion; crop edges if aspect differs */
}

html body.t-city #local-homes.o9-on .o9-cloud {
  position: relative !important;
  z-index: 1 !important;
  flex: 0 0 auto !important;
  flex-basis: auto !important;
  /* ~35% footer band — content-sized, solid tint, no giant void */
  min-height: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  padding: 18px 20px 20px !important;
  background: #eef2f8 !important;
  border-top: 1px solid rgba(0, 5, 62, 0.08) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65) !important;
}

html body.t-city #local-homes.o9-on .o9-k {
  margin: 0 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--blue, #00468C) !important;
}

html body.t-city #local-homes.o9-on .o9-nh,
html body.t-city #local-homes.o9-on .o9-zips {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

html body.t-city #local-homes.o9-on .o9-nh li,
html body.t-city #local-homes.o9-on .o9-zips li {
  margin: 0 !important;
  padding: 8px 12px !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  border: 1px solid rgba(0, 5, 62, 0.10) !important;
  box-shadow: 0 4px 14px rgba(0, 5, 62, 0.06) !important;
  color: var(--ink, #00053E) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  cursor: default !important;
  pointer-events: none !important;
}

html body.t-city #local-homes.o9-on .o9-zips li {
  font-variant-numeric: tabular-nums !important;
  font-weight: 800 !important;
  letter-spacing: 0.02em !important;
  color: rgba(0, 5, 62, 0.78) !important;
  background: rgba(255, 255, 255, 0.9) !important;
}

html body.t-city #local-homes.o9-on .o9-sep {
  height: 1px !important;
  background: rgba(0, 5, 62, 0.10) !important;
  margin: 2px 0 !important;
  border: 0 !important;
}

/* ---- Tablet: stack homes full-width 2x2, then map|chips row ---- */
@media (max-width: 1179px) and (min-width: 700px) {
  html body.t-city #local-homes.o9-on .o9-split {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }

  html body.t-city #local-homes.o9-on .o9-homes .lh-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
    height: auto !important;
  }

  html body.t-city #local-homes.o9-on .o9-locale {
    display: grid !important;
    grid-template-columns: minmax(0, 0.45fr) minmax(0, 0.55fr) !important;
    align-items: stretch !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  html body.t-city #local-homes.o9-on .o9-map {
    position: relative !important;
    inset: auto !important;
    flex: none !important;
    flex-basis: auto !important;
    opacity: 0.7 !important;
    min-height: 220px !important;
    height: 100% !important;
    align-self: stretch !important;
  }

  html body.t-city #local-homes.o9-on .o9-cloud {
    flex: none !important;
    justify-content: center !important;
    padding: 20px 18px !important;
    background: rgba(244, 246, 250, 0.92) !important;
    border-top: 0 !important;
    box-shadow: none !important;
    gap: 12px !important;
  }

  html body.t-city #local-homes.o9-on .o9-nh,
  html body.t-city #local-homes.o9-on .o9-zips {
    gap: 10px !important;
  }

  html body.t-city #local-homes.o9-on .o9-nh li,
  html body.t-city #local-homes.o9-on .o9-zips li {
    font-size: 13px !important;
    padding: 9px 12px !important;
    white-space: nowrap !important;
  }
}

/* ---- Phone: single column; chips in 2-col wrap; no text <12 ---- */
@media (max-width: 699px) {
  html body.t-city #local-homes.o9-on .o9-split {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  html body.t-city #local-homes.o9-on .o9-homes .lh-grid {
    height: auto !important;
  }

  html body.t-city #local-homes.o9-on .o9-locale {
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    min-height: 0 !important;
  }

  html body.t-city #local-homes.o9-on .o9-map {
    position: relative !important;
    inset: auto !important;
    flex: none !important;
    flex-basis: auto !important;
    opacity: 0.65 !important;
    min-height: 160px !important;
    height: 160px !important;
  }

  html body.t-city #local-homes.o9-on .o9-cloud {
    flex: none !important;
    padding: 16px 14px 18px !important;
    background: rgba(244, 246, 250, 0.96) !important;
    border-top: 0 !important;
    box-shadow: none !important;
    gap: 12px !important;
  }

  html body.t-city #local-homes.o9-on .o9-k {
    font-size: 12px !important;
  }

  html body.t-city #local-homes.o9-on .o9-nh,
  html body.t-city #local-homes.o9-on .o9-zips {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  html body.t-city #local-homes.o9-on .o9-nh li,
  html body.t-city #local-homes.o9-on .o9-zips li {
    font-size: 12px !important;
    padding: 9px 10px !important;
    text-align: center !important;
    white-space: normal !important;
    justify-self: stretch !important;
  }
}
