/* A continuous desktop frame, drawn without changing content sizes or sticky layout. */
@media (min-width: 761px) {
  html.public-page .directory-page > .directory-carousel-zone,
  html.public-page .directory-page > .home-notifications,
  html.public-page .directory-page > .directory-main {
    position: relative;
  }

  html.public-page .directory-page > .directory-carousel-zone::before,
  html.public-page .directory-page > .home-notifications::before,
  html.public-page .directory-page > .directory-filter-bar::before,
  html.public-page .directory-page > .directory-main::before {
    content: '';
    box-sizing: border-box;
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    border: 0 solid #e5e7eb;
    border-inline-width: 1px;
  }

  html.public-page .directory-page > .directory-carousel-zone::before {
    border-top-width: 1px;
    border-radius: 4px 4px 0 0;
  }

  html.public-page .directory-page > .directory-carousel-zone .promotion-carousel {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
  }

  html.public-page .directory-page > .directory-filter-bar::before {
    bottom: -1px;
    left: 50%;
    right: auto;
    width: 100%;
    max-width: 868px;
    transform: translateX(-50%);
  }

  html.public-page .directory-page > .directory-carousel-zone:not(:has(.promotion-showcase))::before {
    content: none;
  }

  html.public-page .directory-page > .directory-carousel-zone:not(:has(.promotion-showcase)) + .home-notifications::before,
  html.public-page .directory-page > .directory-carousel-zone:not(:has(.promotion-showcase)) + .directory-filter-bar::before {
    border-top-width: 1px;
    border-radius: 4px 4px 0 0;
  }

  html.public-page .directory-page > .directory-main::before {
    /* Share the existing footer divider's pixel instead of drawing a second line. */
    bottom: -1px;
    border-bottom-width: 1px;
    border-radius: 0 0 4px 4px;
  }
}
