.image-comparison-v1__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.image-comparison-v1__sub {
  font-size: calc(var(--font-body-scale) * 2.2rem);
  line-height: calc(1 + 0.5 / var(--font-heading-scale));
  color: rgb(var(--color-foreground));
  padding: 0 0 2rem;
}

.image-comparison-v1__title {
  font-size: calc(var(--font-body-scale) * 4rem);
  line-height: calc(1 + 0.33 / var(--font-heading-scale));
  font-family: var(--font-custom-family);
  color: rgb(var(--color-foreground));
  font-size: clamp(3rem, calc(2.5cqw + 2rem), 5rem);
}

.image-comparison-v1__desc {
  font-size: calc(var(--font-body-scale) * 1.8rem);
  padding: 2.4rem;
  color: rgba(var(--color-foreground), 0.6);
}

.image-comparison-v1__button {
  padding: 1.2rem 0 2.6rem;
}
@media (min-width: 768px) {
  .image-comparison-v1__button {
    padding: 3.2rem 0 2.6rem;
  }
}

.image-comparison-v1__image {
  user-select: none;
}
.image-comparison-v1__image xo-image-comparison {
  max-height: 65.4rem;
}
.image-comparison-v1__image xo-image-comparison-handle {
  width: 0.4rem;
}
.image-comparison-v1__image .xo-image {
  height: 100%;
}

.image-comparison-v1__icon {
  position: relative;
}

.image-comparison-v1__icon span {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 50px;
  height: 50px;
  margin-left: -25px;
  margin-top: -25px;
  border-radius: 40px;
  background-color: #fff;
  pointer-events: none;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0px 21px 24px rgba(0, 0, 0, 0.15);
}

.image-comparison-v1__before-text,
.image-comparison-v1__after-text {
  font-weight: 500;
  border-radius: var(--buttons-radius);
  letter-spacing: calc(var(--font-heading-scale) * 0rem);
  cursor: default;
  background: rgba(var(--color-background));
  color: rgba(var(--color-foreground));
  top: 2rem;
  text-align: center;
  box-shadow: 0 2.1rem 1.4rem rgba(0, 0, 0, 0.1490196078);
  font-size: calc(var(--font-body-scale) * 1.2rem);
  padding: 0.4rem 1.8rem;
}
@media (min-width: 768px) {
  .image-comparison-v1__before-text,
  .image-comparison-v1__after-text {
    font-size: calc(var(--font-body-scale) * 1.6rem);
    padding: 0.8rem 2rem;
  }
}

.image-comparison-v1__before-text {
  left: 2rem;
}

.image-comparison-v1__after-text {
  right: 2rem;
}