/* Selection-driven gallery: one raised photo, with the other photos sliding around it. */
.space-section { min-height: 0; padding: 48px 0 28px; background: #fff; }
.space-section > .section-shell { width: min(calc(100% - 64px), 1350px); padding: 0; }
.space-section .section-heading h2 { font-size: clamp(27px, 2.6vw, 40px); }
.space-gallery { margin-top: 44px; }
.space-gallery .space-track {
  position: relative;
  display: block;
  width: 100%;
  height: clamp(330px, 40vw, 540px);
  overflow: visible;
  touch-action: pan-y;
  isolation: isolate;
}
.space-gallery .space-image {
  cursor: pointer;
  position: absolute;
  top: 9.25%;
  left: 0;
  width: 24%;
  height: 81.5%;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 10px;
  overflow: hidden;
  background: #ece2f8;
  box-shadow: 0 6px 12px #24193226;
  transform: translateX(var(--offset, 0%)) scale(var(--scale, 1));
  transform-origin: center;
  transition: transform 650ms cubic-bezier(.22, 1, .36, 1), box-shadow 650ms ease;
  will-change: transform;
}
.space-gallery .space-image[aria-pressed='true'] { box-shadow: 0 12px 28px #24193233; }
.space-gallery .space-image img { display: block; width: 100%; height: 100%; object-fit: cover; pointer-events: none; user-select: none; }
.space-gallery .space-image:focus-visible { outline: 3px solid #f26233; outline-offset: 4px; }

@media (max-width: 650px) {
  .space-section { padding: 32px 0 24px; }
  .space-section > .section-shell { width: calc(100% - 40px); }
  .space-gallery { margin-top: 28px; }
  .space-gallery .space-track { height: clamp(300px, 92vw, 440px); }
  .space-gallery .space-image { width: 62%; left: 19%; top: 10%; height: 80%; transform: translateX(var(--mobile-offset, 0%)) scale(var(--scale, 1)); }

}
@media (prefers-reduced-motion: reduce) {
  .space-gallery .space-image { transition: none; }
}
