/*
 * Amphora Search presentation package foundation — Priority 5C1.
 *
 * This package proves presentation ownership only. The accepted Argent Search
 * category / Segment / Features presentation rules remain in the vessel as
 * compatibility copies during this slice. Search routing, result semantics,
 * filter-option derivation, client-side filtering behavior, result-card
 * visibility, Search body/card geometry, and vessel profile selection remain
 * unchanged.
 *
 * The migrated source chunks below are byte-preserved from the accepted Argent
 * 1.5.30 runtime and are intentionally still vessel-compatible. Vessel/profile
 * isolation is a later generalization stage after ownership is proven.
 */

:root {
  --amphora-presentation-search-package-foundation: 1;
}

/* Argent 1.5.26 Search/Listings category-geometry continuity.
 * Retain the canonical Search Results pagecache-listing-segment-pills markup,
 * but restore the large readable listing-quarter geometry used before search.
 * Shared control-family colors, borders, surfaces, shadows, and states remain
 * owned by the existing architecture cascade.
 */
html body.argent-local-search .argent-search-controls-before-results > .argent-search-listing-tabs {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  gap: clamp(12px, 2vw, 30px) !important;
  margin: 0 0 clamp(18px, 2vw, 24px) 0 !important;
  padding: 0 !important;
}

html body.argent-local-search .argent-search-controls-before-results > .argent-search-listing-tabs > a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 1 1 clamp(170px, 18vw, 220px) !important;
  min-height: clamp(54px, 5vw, 62px) !important;
  padding: .8rem clamp(.8rem, 1.3vw, 1.2rem) !important;
  font-size: clamp(.95rem, 1.1vw, 1.05rem) !important;
  white-space: nowrap !important;
}

html body.argent-local-search .argent-search-controls-before-results > .argent-search-listing-tabs > a:first-child {
  flex: .42 1 clamp(74px, 7vw, 96px) !important;
}

/* Argent local search shared listing-filter controls 1.1.42.
 * Align the in-page segment and feature controls with the governed listings
 * page control family while scoping their effect only to listing/property
 * cards returned by the current search. These controls do not filter
 * non-property lanes such as Neighborhoods or Site pages.
 */
body.argent-local-search .argent-searched-properties-filter {
  display: block !important;
  margin: 0 0 clamp(18px, 2.2vw, 26px) 0 !important;
  padding: clamp(14px, 1.8vw, 18px) !important;
  background: var(--amphora-local-card-surface, #fffdf5) !important;
  border: 1px solid var(--amphora-local-line, #d8d1c2) !important;
  border-radius: clamp(18px, 2vw, 26px) !important;
  box-shadow: var(--argent-local-soft-shadow, 0 8px 20px rgba(22, 23, 30, .05)) !important;
}

body.argent-local-search .argent-searched-properties-filter-inner {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: clamp(12px, 1.4vw, 18px) !important;
}

body.argent-local-search .argent-searched-properties-segment-control,
body.argent-local-search .argent-searched-properties-feature-control {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.7rem !important;
  margin: 0 !important;
}

body.argent-local-search .argent-searched-properties-segment-control label,
body.argent-local-search .argent-searched-properties-feature-label {
  color: var(--amphora-local-ink, #07152d) !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
}

body.argent-local-search .argent-searched-properties-segment-control select {
  min-width: min(100%, 24rem) !important;
  min-height: 2.8rem !important;
  padding: 0.55rem 2.1rem 0.55rem 1rem !important;
  color: var(--amphora-local-ink, #07152d) !important;
  font-weight: 850 !important;
  background-color: var(--argent-local-control-family-background, #fffdf5) !important;
  border: var(--argent-local-control-family-border, 1px solid var(--amphora-local-line, #d8d1c2)) !important;
  border-radius: var(--argent-local-control-family-radius, 999px) !important;
  box-shadow: var(--argent-local-control-family-shadow, 0 6px 14px rgba(22, 23, 30, .08)) !important;
}

body.argent-local-search .argent-searched-properties-feature-control {
  position: relative !important;
}

body.argent-local-search .argent-searched-properties-feature-button,
body.argent-local-search .argent-searched-properties-feature-clear,
body.argent-local-search .argent-searched-properties-feature-done {
  min-height: 2.8rem !important;
  padding: 0.55rem 1rem !important;
  color: var(--amphora-local-ink, #07152d) !important;
  font-weight: 850 !important;
  background: var(--argent-local-control-family-background, #fffdf5) !important;
  border: var(--argent-local-control-family-border, 1px solid var(--amphora-local-line, #d8d1c2)) !important;
  border-radius: var(--argent-local-control-family-radius, 999px) !important;
  box-shadow: var(--argent-local-control-family-shadow, 0 6px 14px rgba(22, 23, 30, .08)) !important;
}

body.argent-local-search .argent-searched-properties-feature-button[disabled] {
  opacity: 0.58 !important;
  cursor: default !important;
}

body.argent-local-search .argent-searched-properties-feature-panel {
  position: absolute !important;
  top: calc(100% + 0.55rem) !important;
  left: 0 !important;
  z-index: 80 !important;
  width: min(22rem, calc(100vw - 3rem)) !important;
  max-height: min(24rem, 70vh) !important;
  overflow: auto !important;
  padding: 0.85rem !important;
  background: var(--amphora-local-card-surface, #fffdf5) !important;
  border: 1px solid var(--amphora-local-line, #d8d1c2) !important;
  border-radius: 18px !important;
  box-shadow: 0 18px 40px rgba(22, 23, 30, .18) !important;
}

body.argent-local-search .argent-searched-properties-feature-panel[hidden] {
  display: none !important;
}

body.argent-local-search .argent-searched-properties-feature-option {
  display: flex !important;
  align-items: flex-start !important;
  gap: 0.55rem !important;
  padding: 0.35rem 0.2rem !important;
  color: var(--amphora-local-ink, #07152d) !important;
  font-weight: 720 !important;
  line-height: 1.25 !important;
}

body.argent-local-search .argent-searched-properties-feature-option input {
  margin-top: 0.12rem !important;
}

body.argent-local-search .argent-searched-properties-feature-actions {
  display: flex !important;
  justify-content: flex-end !important;
  gap: 0.55rem !important;
  margin-top: 0.65rem !important;
  padding-top: 0.65rem !important;
  border-top: 1px solid color-mix(in srgb, var(--amphora-local-line, #d8d1c2) 74%, transparent 26%) !important;
}

body.argent-local-search .argent-searched-properties-feature-clear,
body.argent-local-search .argent-searched-properties-feature-done {
  min-height: 2.2rem !important;
  padding: 0.35rem 0.75rem !important;
  font-size: 0.88rem !important;
}

body.argent-local-search .argent-searched-properties-filter-status,
body.argent-local-search .argent-searched-properties-empty {
  margin: 0.75rem 0 0 0 !important;
  color: var(--amphora-local-muted, #607484) !important;
  font-weight: 720 !important;
}

@media (max-width: 720px) {
  body.argent-local-search .argent-searched-properties-segment-control,
  body.argent-local-search .argent-searched-properties-feature-control {
    width: 100% !important;
    align-items: flex-start !important;
  }

  body.argent-local-search .argent-searched-properties-segment-control select,
  body.argent-local-search .argent-searched-properties-feature-button {
    width: 100% !important;
  }
}


/* Argent local search result-control ordering 1.1.41.
 * Listing-type tabs and searched-property controls sit above the result-lane
 * heading, matching the Listings page control rhythm.
 */
body.argent-local-search .argent-search-controls-before-results {
  margin: 0 0 clamp(24px, 2.8vw, 34px) 0 !important;
}

body.argent-local-search .argent-search-controls-before-results + .argent-section-heading {
  margin-top: 0 !important;
}

body.argent-local-search .argent-search-controls-before-results .argent-search-listing-tabs {
  margin-bottom: clamp(14px, 1.8vw, 20px) !important;
}

/* ========================================================================
 * Search listing-result card presentation foundation
 * Amphora 1.5.80 / Priority 5C3
 *
 * Byte-preserved accepted Argent 1.5.31 Search-only card presentation.
 * Presentation only: thumbnail/headline/facts/price/address/narrative.
 * Property semantics, filtering, favorites, body/header geometry and
 * action-rail behavior remain vessel-owned.
 * ===================================================================== */

/* Argent local search listing-card closer parity 1.1.23.
 * 1.1.22 moved local /search/ listing hits onto the governed listing-card
 * class family but still left the page visibly different from listing cards
 * rendered elsewhere.  Keep this as a local search presentation shim only:
 * restore the headline thumbnail rail when payload image data exists, make the
 * headline/link rail use the same heavy local heading treatment, and copy the
 * compact card grid/summary rhythm used by the accepted listing-card variants.
 */
body.argent-local-search {
  --argent-local-listing-card-icon-column-width: 20px;
  --argent-local-listing-card-icon-column-height: 18px;
  --argent-local-listing-card-icon-gap: 8px;
  --argent-local-listing-card-headline-gap: clamp(10px, .72vw, 14px);
  --argent-local-listing-card-narrative-gap: clamp(10px, .68vw, 13px);
  --argent-local-listing-card-thumbnail-rail-width: 32px;
  --argent-local-listing-card-thumbnail-height: 52px;
  --argent-local-listing-card-thumbnail-radius: 5px;
}

body.argent-local-search .argent-search-listing-pagecache-root {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)) !important;
  gap: 18px 22px !important;
  align-items: start !important;
}

body.argent-local-search .argent-search-listing-pagecache-card {
  display: block !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 22px !important;
  height: auto !important;
}

body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-card-body {
  display: grid !important;
  gap: 12px !important;
}

body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-card-copy {
  min-width: 0 !important;
}

body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-card-headline-block {
  margin: 0 0 var(--argent-local-listing-card-headline-gap) !important;
  padding: 0 !important;
}

body.argent-local-search .argent-search-listing-pagecache-card.argent-listing-card-has-headline-thumb {
  --argent-local-listing-card-icon-column-width: var(--argent-local-listing-card-thumbnail-rail-width);
}

body.argent-local-search .argent-search-listing-pagecache-card.argent-listing-card-has-headline-thumb .pagecache-listing-card-headline-block {
  display: grid !important;
  grid-template-columns: var(--argent-local-listing-card-thumbnail-rail-width) minmax(0, 1fr) !important;
  column-gap: var(--argent-local-listing-card-icon-gap, 8px) !important;
  row-gap: 0 !important;
  align-items: center !important;
  justify-items: start !important;
  width: 100% !important;
  min-width: 0 !important;
}

body.argent-local-search .argent-search-listing-pagecache-card .argent-listing-card-headline-thumb {
  grid-column: 1 !important;
  display: block !important;
  width: var(--argent-local-listing-card-thumbnail-rail-width) !important;
  height: var(--argent-local-listing-card-thumbnail-height) !important;
  min-width: var(--argent-local-listing-card-thumbnail-rail-width) !important;
  max-width: var(--argent-local-listing-card-thumbnail-rail-width) !important;
  min-height: var(--argent-local-listing-card-thumbnail-height) !important;
  max-height: var(--argent-local-listing-card-thumbnail-height) !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: var(--argent-local-listing-card-thumbnail-radius) !important;
  background: var(--soft, #eef3f7) !important;
  line-height: 0 !important;
}

body.argent-local-search .argent-search-listing-pagecache-card .argent-listing-card-headline-thumb-img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: inherit !important;
  background: transparent !important;
}

body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-card-headline {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--argent-local-heading-accent, var(--pagecache-heading, var(--heading, #8f4d28))) !important;
  opacity: 1 !important;
  font-size: clamp(1.18rem, .16vw + 1.15rem, 1.3rem) !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
  letter-spacing: .002em !important;
}

body.argent-local-search .argent-search-listing-pagecache-card.argent-listing-card-has-headline-thumb .pagecache-listing-card-headline {
  grid-column: 2 !important;
  min-width: 0 !important;
  align-self: center !important;
}

body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-card-headline-link,
body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-card-headline-link:visited {
  color: inherit !important;
  text-decoration: none !important;
}

body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-card-headline-link:hover,
body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-card-headline-link:focus-visible {
  text-decoration: underline !important;
  text-underline-offset: .16em !important;
}

body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-summary-inline-line {
  display: grid !important;
  grid-template-columns: var(--argent-local-listing-card-icon-column-width) minmax(0, 1fr) auto !important;
  column-gap: var(--argent-local-listing-card-icon-gap) !important;
  row-gap: 0 !important;
  align-items: center !important;
  justify-items: start !important;
  width: 100% !important;
  min-width: 0 !important;
}

body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-summary-favorite,
body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-summary-address-finger {
  grid-column: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  justify-self: start !important;
  align-self: center !important;
  width: var(--argent-local-listing-card-icon-column-width) !important;
  min-width: var(--argent-local-listing-card-icon-column-width) !important;
  max-width: var(--argent-local-listing-card-icon-column-width) !important;
  height: var(--argent-local-listing-card-icon-column-height) !important;
  min-height: var(--argent-local-listing-card-icon-column-height) !important;
  max-height: var(--argent-local-listing-card-icon-column-height) !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
}

body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-favorite-toggle {
  width: 20px !important;
  height: 18px !important;
  min-width: 20px !important;
  min-height: 18px !important;
  max-width: 20px !important;
  max-height: 18px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-summary-primary-facts {
  grid-column: 2 !important;
  min-width: 0 !important;
  align-self: center !important;
  line-height: 1.14 !important;
  color: #000 !important;
  font-weight: 900 !important;
}

body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-summary-price {
  grid-column: 3 !important;
  justify-self: end !important;
  align-self: center !important;
  white-space: nowrap !important;
  color: #000 !important;
  font-weight: 980 !important;
}

body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-summary-address-row {
  display: grid !important;
  grid-template-columns: var(--argent-local-listing-card-icon-column-width) minmax(0, 1fr) !important;
  column-gap: var(--argent-local-listing-card-icon-gap) !important;
  row-gap: 0 !important;
  align-items: center !important;
  justify-items: start !important;
  width: 100% !important;
  min-width: 0 !important;
}

body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-summary-address-link,
body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-summary-address-link:visited {
  grid-column: 2 !important;
  min-width: 0 !important;
  align-self: center !important;
  color: var(--pagecache-accent, var(--accent, #17679a)) !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-summary-address-link:hover,
body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-summary-address-link:focus-visible {
  text-decoration: underline !important;
  text-underline-offset: .16em !important;
}

body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-narrative {
  display: block !important;
  margin: var(--argent-local-listing-card-narrative-gap) 0 0 0 !important;
  padding: 0 !important;
  min-width: 0 !important;
  text-indent: 0 !important;
  transform: none !important;
}

body.argent-local-search .argent-search-listing-pagecache-card.argent-listing-card-has-headline-thumb .pagecache-listing-narrative {
  display: grid !important;
  grid-template-columns: var(--argent-local-listing-card-thumbnail-rail-width) minmax(0, 1fr) !important;
  column-gap: var(--argent-local-listing-card-icon-gap, 8px) !important;
  row-gap: 0 !important;
  align-items: start !important;
}

body.argent-local-search .argent-search-listing-pagecache-card .pagecache-listing-narrative-lede {
  margin: 0 !important;
  padding: 0 !important;
  text-indent: 0 !important;
  transform: none !important;
  max-width: none !important;
  color: var(--amphora-local-ink) !important;
  font-size: 0.98rem !important;
  font-weight: 520 !important;
  line-height: 1.48 !important;
}

body.argent-local-search .argent-search-listing-pagecache-card.argent-listing-card-has-headline-thumb .pagecache-listing-narrative-lede {
  grid-column: 2 !important;
  min-width: 0 !important;
}


