/* Shared layout for both organoid and platform sections */
.step-row {
  display: flex;
  justify-content: center;
  align-items: start;
  flex-wrap: wrap;
  gap: 2rem; /* mobile-first spacing */
}

.step-block {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
  width: 100%;
  max-width: 300px;
  margin: 0 auto;
}

.step-block__icon {
  font-size: 6em;
}

.step-block__text {
  text-align: left;
}


.step-block__text {
  flex: 1;
}
.step-block__icon {
  flex-shrink: 0;
}

/* Optional modifiers for semantic clarity 
.step-block--organoid {}
.step-block--platform {}
*/

.step-block--cta-options .step-block__icon {
  font-size:3rem !important;
}


@media (min-width: 768px) {
  .step-row {
    display: flex;
    justify-content: center; /* evenly spaced with room on edges */
    align-items: flex-start;
    flex-wrap: nowrap;
    gap: 0; /* gap not needed with space-around */
  }

  .step-block {
    display: flex;
    flex: 0 1 auto;
    max-width: 300px;
    margin: 0;
    flex-direction: column;
    text-align: center;
  }

  .step-block__icon {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-inline: auto;
    max-width: 120px;
    width: 100%;
  }

  .step-block__text {
    text-align: center;
    max-width: 200px
  }
}

/* Animation (used only in organoid section) */
.fade-step {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

.fade-step.visible {
  opacity: 1;
  transform: translateY(0);
}
