.gl-b-carousel .image-carousel .swiper-slide img {
  height: 100%;
  object-fit: cover;
  object-position: center center;
  width: 100%;
}

@media (max-width: 767px) {
  .gl-b-alternating-column .ac-animated-heading {
    padding-bottom: clamp(52px, 14vw, 72px);
  }
}

.gl-carousel-wrapper.text-carousel {
  overflow: hidden;
}

.gl-carousel-wrapper.text-carousel .swiper-wrapper {
  align-items: flex-start;
}

.gl-carousel-wrapper.text-carousel .swiper-slide {
  height: auto;
}

.gl-carousel-wrapper.text-carousel .content-container {
  opacity: 0;
}

.gl-carousel-wrapper.text-carousel .swiper-slide-active .content-container {
  opacity: 1;
}

.gl-carousel-wrapper.text-carousel .content-container.reflection-card {
  max-width: min(100%, 1040px);
  text-align: left;
}

.gl-carousel-wrapper.text-carousel .reflection-layout {
  align-items: center;
  display: grid;
  gap: clamp(18px, 4vw, 48px);
  grid-template-columns: minmax(86px, 1fr) minmax(0, 3fr);
}

.gl-carousel-wrapper.text-carousel .reflection-photo {
  aspect-ratio: 1 / 1;
  background: rgba(247, 231, 222, 0.08);
  border: 1px solid rgba(247, 231, 222, 0.26);
  overflow: hidden;
  width: 100%;
}

.gl-carousel-wrapper.text-carousel .reflection-photo img {
  display: block;
  height: 100%;
  object-fit: cover;
  object-position: center;
  width: 100%;
}

.gl-carousel-wrapper.text-carousel .reflection-photo-placeholder {
  align-items: center;
  display: flex;
  justify-content: center;
}

.gl-carousel-wrapper.text-carousel .reflection-photo-placeholder span {
  color: rgba(247, 231, 222, 0.72);
  font-family: MinionPro, Georgia, serif;
  font-size: clamp(34px, 8vw, 72px);
  line-height: 1;
}

.gl-carousel-wrapper.text-carousel .reflection-copy {
  text-align: left;
}

@media (max-width: 767px) {
  .gl-carousel-wrapper.text-carousel .content-container.reflection-card {
    max-width: 100%;
  }

  .gl-carousel-wrapper.text-carousel .reflection-layout {
    align-items: flex-start;
    gap: 16px;
    grid-template-columns: minmax(76px, 1fr) minmax(0, 3fr);
  }
}

.footer-logo svg {
  aspect-ratio: 1376 / 224;
  height: auto !important;
  width: 100%;
}

/* Hero SVG aspect-ratio fix */
.gl-b-hero .heading-image .animated-svg {
  line-height: 0;
}

.gl-b-hero .heading-image .animated-svg svg {
  aspect-ratio: 655.56 / 126.5;
  display: block;
  height: auto !important;
  max-width: 100%;
  transform-origin: left center;
}

@media (max-width: 767px) {
  .gl-b-hero .heading-image {
    gap: clamp(4px, 1.75vw, 8px);
    max-width: calc(100vw - 32px);
  }

  .gl-b-hero .heading-image .animated-svg {
    width: min(100%, calc((100vw - 32px) / 1.12));
  }
}
