/* General styles for the grid layout */
.grid-flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 2em 0;
}

.col {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1em;
}

.col-image {
  width: 100%; /* Ensures the image takes up the full width of the column */
  height: 20em; /* Fixed height for all images on large screens */
  background-size: cover; /* Ensures the image covers the area */
  background-position: center;
  background-repeat: no-repeat;
}

.col-text {
  flex: 1;
  padding: 2em;
  display: flex;
  align-items: center;
  justify-content: center;
}

.col-left {
  order: -1;
}

/* Align content within the text column */
.Aligner-item {
  width: 100%;
}

.footer-title {
  font-size: 1.5em;
  margin-bottom: 1em;
}

/* Media queries */
@media (max-width: 768px) {
  .grid-flex {
    flex-direction: column;
    margin: 1em 0;
  }
  .col {
    padding: 1em;
  }
  .col-left {
    order: 0;
  }
  .col-text {
    padding: 1em;
  }
}

@media (max-width: 480px) {
  .col-image {
    height: auto; /* Allows height to adjust based on the content */
    min-height: 15em; /* Ensures a minimum height */
    background-size: contain; /* Prevents cropping on mobile screens */
  }
  .col-text {
    padding: 0.5em;
  }
}
