@keyframes fadeInOut {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes autoplayLine {
  from {
    width: 0%;
  }
  to {
    width: 100%;
  }
}
@keyframes scrollDown {
  0% {
    top: 6px;
  }
  50% {
    top: 24px;
  }
  100% {
    top: 6px;
  }
}
@keyframes scrollDownFade {
  0% {
    height: 24px;
  }
  50% {
    height: 6px;
  }
  100% {
    height: 24px;
  }
}
@keyframes subtleBounce {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-20%);
  }
  100% {
    transform: translateY(0);
  }
}
alternating-feature-blocks {
  display: grid;
  gap: 3.75rem;
}
alternating-feature-blocks alternating-feature-block .item {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3.75rem;
  min-height: 42.5rem;
}
@media screen and (max-width: 1400px) {
  alternating-feature-blocks alternating-feature-block .item {
    min-height: 33.75rem;
  }
}
@media screen and (max-width: 978px) {
  alternating-feature-blocks alternating-feature-block .item {
    gap: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  alternating-feature-blocks alternating-feature-block .item {
    grid-template-columns: 1fr;
    gap: 2rem;
    min-height: initial;
  }
}
alternating-feature-blocks alternating-feature-block .item .img {
  position: relative;
  left: 2.5rem;
  opacity: 0;
  background: transparent;
  border-radius: 3.75rem 3.75rem 12.5rem 3.75rem;
  position: relative;
  overflow: hidden;
  transition: all 1s cubic-bezier(0.19, 1, 0.22, 1) 0.2s;
}
@media screen and (max-width: 1100px) {
  alternating-feature-blocks alternating-feature-block .item .img {
    border-radius: 3.75rem 3.75rem 7.5rem 3.75rem;
  }
}
@media screen and (max-width: 768px) {
  alternating-feature-blocks alternating-feature-block .item .img {
    padding-bottom: 75%;
    border-radius: 1.875rem 1.875rem 3.75rem 1.875rem;
  }
}
alternating-feature-blocks alternating-feature-block .item .img img {
  position: absolute;
  object-fit: cover;
  object-position: 50% 50%;
  transform: scale(1.01);
  width: 100%;
  height: 100%;
}
alternating-feature-blocks alternating-feature-block .item .text {
  position: relative;
  opacity: 0;
  left: -2.5rem;
  padding: 4.375rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.5rem;
  align-items: flex-start;
  transition: all 1s cubic-bezier(0.19, 1, 0.22, 1) 0.2s;
}
@media screen and (max-width: 1200px) {
  alternating-feature-blocks alternating-feature-block .item .text {
    padding: 3.75rem 0;
  }
}
@media screen and (max-width: 768px) {
  alternating-feature-blocks alternating-feature-block .item .text {
    padding: 0;
  }
}
alternating-feature-blocks alternating-feature-block .item .text .inner {
  display: flex;
  flex-direction: column;
  gap: var(--marginBottom);
}
alternating-feature-blocks alternating-feature-block .item .text *:not(ul):not(ol):not(li) {
  margin-bottom: 0;
}
alternating-feature-blocks alternating-feature-block .item.alternating-feature-block--even .img {
  left: -2.5rem;
  order: 2;
}
@media screen and (max-width: 768px) {
  alternating-feature-blocks alternating-feature-block .item.alternating-feature-block--even .img {
    order: 1;
  }
}
alternating-feature-blocks alternating-feature-block .item.alternating-feature-block--even .text {
  left: 2.5rem;
  order: 1;
}
@media screen and (max-width: 768px) {
  alternating-feature-blocks alternating-feature-block .item.alternating-feature-block--even .text {
    order: 2;
  }
}
alternating-feature-blocks alternating-feature-block:nth-of-type(3n+2) .item .img {
  border-radius: 12.5rem 3.75rem 3.75rem 12.5rem;
}
@media screen and (max-width: 1100px) {
  alternating-feature-blocks alternating-feature-block:nth-of-type(3n+2) .item .img {
    border-radius: 7.5rem 3.75rem 3.75rem 7.5rem;
  }
}
@media screen and (max-width: 768px) {
  alternating-feature-blocks alternating-feature-block:nth-of-type(3n+2) .item .img {
    border-radius: 3.75rem 1.875rem 1.875rem 3.75rem;
  }
}
alternating-feature-blocks alternating-feature-block:nth-of-type(3n+3) .item .img {
  border-radius: 3.75rem 12.5rem 3.75rem 3.75rem;
}
@media screen and (max-width: 1100px) {
  alternating-feature-blocks alternating-feature-block:nth-of-type(3n+3) .item .img {
    border-radius: 3.75rem 7.5rem 3.75rem 3.75rem;
  }
}
@media screen and (max-width: 768px) {
  alternating-feature-blocks alternating-feature-block:nth-of-type(3n+3) .item .img {
    border-radius: 1.875rem 3.75rem 1.875rem 1.875rem;
  }
}
alternating-feature-blocks alternating-feature-block.show .item .img, alternating-feature-blocks alternating-feature-block.show .item .text {
  opacity: 1;
  left: 0;
}
