@media (max-width: 1099px) {
  .listing-results-detail {
    display: none;
  }
}

@media (min-width: 1100px) {
  .listing-results-layout {
    /* Match taller .listing-results-chrome sticky band (~68px). */
    --listing-sticky-top: calc(env(safe-area-inset-top, 0px) + 68px);
    /* Shared white air under navy chrome for all three columns. */
    --listing-band-gap: 30px;
    --listing-column-sticky-top: calc(
      var(--listing-sticky-top) + var(--listing-band-gap)
    );
    --listing-column-sticky-max: calc(
      100dvh - var(--listing-column-sticky-top) - 12px
    );
    display: grid;
    grid-template-columns: 300px minmax(0, 1fr) 420px;
    column-gap: 16px;
    align-items: start;
    max-width: 1560px;
    margin-inline: auto;
  }

  .listing-results-layout > [data-listing-results-live] {
    display: contents;
  }

  .listing-results,
  .listing-results-empty,
  .listing-results-related {
    grid-column: 2;
    min-width: 0;
    margin-top: var(--listing-band-gap);
  }

  .v2-ui .listing-results-layout .listing-results {
    grid-template-columns: minmax(0, 1fr);
  }

  .listing-results .listing-card {
    max-width: 560px;
  }

  .listing-results [data-listing-card][aria-current="true"] {
    outline: 2px solid #ff6b00;
    outline-offset: 0;
  }

  .listing-results .v2-listing-social__heart {
    font-size: 28px;
    -webkit-text-stroke-width: 1.8px;
  }

  .listing-results .v2-listing-social--card .v2-listing-social__favorite {
    min-height: 48px;
  }

  .listing-results-detail {
    display: block;
    grid-column: 3;
    grid-row: 1;
    align-self: start;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    position: sticky;
    top: var(--listing-column-sticky-top);
    z-index: 2;
    margin-top: var(--listing-band-gap);
    max-height: var(--listing-column-sticky-max);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .listing-results-layout > .listing-filter {
    display: block !important;
    position: sticky;
    /* Clear mobile fixed inset:0 without wiping sticky top. */
    inset: auto;
    top: var(--listing-column-sticky-top);
    right: auto;
    bottom: auto;
    left: auto;
    z-index: 2;
    box-sizing: border-box;
    width: 100%;
    height: auto;
    max-height: var(--listing-column-sticky-max);
    margin-top: var(--listing-band-gap);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    grid-column: 1;
    grid-row: 1;
    align-self: start;
    min-width: 0;
  }

  .listing-results-layout .listing-filter__scrim,
  .listing-results-layout .listing-filter__head button[data-listing-filter-close] {
    display: none;
  }

  .listing-results-layout .listing-filter__panel {
    width: 100%;
    max-width: 100%;
    height: auto;
    max-height: none;
    position: static;
    top: auto;
    overflow: visible;
    box-shadow: none;
    box-sizing: border-box;
  }

  .listing-results-layout .listing-filter__actions {
    position: static;
  }

  .listing-results-pin .listing-results-toolbar__picks {
    display: none;
  }

  .listing-results-pin .listing-results-toolbar {
    padding-top: 0;
  }
}

@media (min-width: 1280px) {
  .listing-results-layout {
    grid-template-columns: 320px minmax(0, 1fr) 440px;
  }
}
