/* Keep the Collection reachable in short in-app viewports and preserve the side-by-side desktop doors. */
body.collection-index {
  height: auto !important;
  min-height: 100svh !important;
  max-height: none !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  display: flex !important;
  flex-direction: column !important;
}

body.collection-index > main {
  flex: 0 0 auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}

.collection-index .collection-scenes {
  display: grid !important;
  flex: 0 0 auto !important;
  height: min(58svh, 520px) !important;
  min-height: 340px !important;
  max-height: none !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows: minmax(340px, 1fr) !important;
  margin: 24px auto !important;
}

@media (max-width: 760px) {
  .collection-index .collection-intro {
    flex: 0 0 auto !important;
    min-height: 82px !important;
  }

  .collection-index .collection-scenes {
    display: grid !important;
    flex: 0 0 auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: repeat(2, minmax(260px, 42svh)) !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    gap: 10px !important;
    padding: 8px 10px 16px !important;
  }

  .collection-index .collection-scene {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    height: 42svh !important;
    min-height: 260px !important;
    max-height: 420px !important;
    overflow: hidden !important;
  }

  .collection-index .collection-publications .publication-covers {
    position: absolute !important;
    inset: 0 0 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    visibility: visible !important;
    opacity: 1 !important;
    z-index: 1 !important;
  }

  .collection-index .collection-publications .publication-covers img {
    display: block !important;
    width: auto !important;
    height: 82% !important;
    max-width: 47% !important;
    object-fit: contain !important;
  }

  .collection-index .collection-caption {
    position: absolute !important;
    inset: auto 0 0 !important;
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    z-index: 3 !important;
  }

  .collection-index .collection-nine > img {
    display: block !important;
    width: 100% !important;
    height: calc(100% - 48px) !important;
    object-fit: contain !important;
    object-position: center !important;
  }
}
