/**
 * Circular Stack Animation Styles
 */

.csa-wrapper {
  --color-bg: #ece6df;
  --color-bg-alt: #8b8078;
  --color-title: #191818;
  position: relative;
  width: 100%;
  margin: 0 auto;
  height: auto;
  min-height: 100vh;
  padding-bottom: 40vh; /* Make sure there's space for the full circle */
  background-size: 150px, 100% 100%;
  overflow: visible;
}

.csa-scene {
  perspective: 1000px;
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  width: 100%;
  left: 0;
  top: 0;
  overflow: visible;
}

.csa-container, .csa-group {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: visible;
}

.csa-scene {
  top: 25vh; /* Adjust this value to move the circle down */
  transform: translateY(0); /* Ensures only vertical positioning is affected */
}


.csa-card {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  will-change: transform;
  z-index: 1;
}

.csa-card__img {
  width: 12vw; /* Responsive unit based on viewport width */
  max-width: 16rem; /* Maximum size cap */
  min-width: 8rem; /* Minimum size to ensure visibility */
  border-radius: 5px;
  aspect-ratio: 2/3;
  background-position: center;
  background-size: cover;
  box-shadow: 0 10px 30px rgba(0,0,0,0.2);
}

.csa-headings {
  text-align: center;
  position: absolute;
  z-index: 10;
  left: 0;
  top: 40vh; /* Position roughly in the middle of the viewport */
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  pointer-events: none;
}

