/* Cart sticky; packs only in left column — never cover cart */

.guest-checkout {
  padding: 1.25rem 4vw 3rem;
  box-sizing: border-box;
}

.guest-checkout__grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.2fr) minmax(17rem, 0.7fr) !important;
  gap: 2rem 2.25rem !important;
  align-items: start !important;
}

.guest-checkout__main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}

/* cart ALWAYS rides with scroll under chrome+progress */
.guest-summary {
  position: sticky !important;
  top: 6.25rem !important; /* chrome + progress */
  z-index: 25 !important;
  align-self: start !important;
  max-height: calc(100vh - 7rem);
  overflow: auto;
  padding: 0 0 1.1rem !important;
  border: 1px solid rgba(246, 239, 224, 0.16) !important;
  background: #0c0c0e !important;
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.4) !important;
}

/* packs under form, LEFT only — never full-bleed under cart */
.guest-packs-col {
  margin: 2rem 0 0;
  padding: 1.5rem 0 0;
  border-top: 1px solid rgba(246, 239, 224, 0.12);
  width: 100%;
  max-width: 100%;
}

.guest-packs-col .room-packs {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

.guest-packs-col .room-packs__grid {
  grid-template-columns: 1fr !important;
  gap: 1rem !important;
}

.guest-packs-col .pack-mini {
  display: grid;
  grid-template-columns: 7rem minmax(0, 1fr);
  gap: 0.85rem;
  align-items: stretch;
}

.guest-packs-col .pack-mini__photo {
  margin: 0;
  min-height: 6.5rem;
}

.guest-packs-col .pack-mini__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 900px) {
  .guest-checkout__grid {
    grid-template-columns: 1fr !important;
  }

  .guest-summary {
    position: relative !important;
    top: auto !important;
    max-height: none;
    order: -1;
  }
}

.guest-slot-packs{margin:1.25rem 0 0}
.guest-slot-packs__clear{margin-top:.75rem;border:0;background:none;color:rgba(246,239,224,.55);font:inherit;cursor:pointer;text-decoration:underline}
.guest-packs-col--multi{display:grid;gap:1.5rem;margin-top:1.5rem}
