.cta-new {
  background-color: var(--color-main);
  color: var(--color-white);
  padding: clamp(20px, 5cqw, 40px);
  overflow: hidden;
  border-radius: var(--border-radius-bigger);
  margin: calc(var(--gap) * 2) auto;
  position: relative;
}
.cta-new__content {
  display: flex;
  gap: 2em;
  align-items: center;
  justify-content: space-between;
  z-index: 2;
}
.cta-new__title {
  font-size: var(--font-size-30);
  font-weight: var(--font-weight-bold);
  color: var(--color-white);
}
.cta-new__text {
  font-size: var(--font-size-18);
  line-height: 1.1em;
  color: var(--color-white);
  margin-top: 0.5em;
}
.cta-new__button-wrapper {
  flex-shrink: 0;
}
.cta-new__background {
  position: absolute;
  transform: rotate(-180deg);
  left: 0;
  bottom: 0;
  max-width: 600px;
  z-index: 1;
}
.cta-new__button {
  --icon-button: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='61' height='58'%3E%3Cpath fill-rule='evenodd' fill='%23fff' d='M29.659 58h-.016C13.821 57.992.954 44.975.963 28.985.972 13 13.845 0 29.661 0h.015c4.045.002 7.971.847 11.665 2.51a2.647 2.647 0 011.32 3.481 2.598 2.598 0 01-3.445 1.336 23.14 23.14 0 00-9.542-2.055c-6.344-.081-12.168 2.462-16.607 6.942C8.629 16.692 6.184 22.65 6.18 28.987c-.006 13.084 10.52 23.732 23.466 23.74h.013c12.941 0 23.473-10.635 23.48-23.713v-2.451c0-1.456 1.167-2.636 2.609-2.636s2.609 1.18 2.609 2.636v2.452C58.349 45.001 45.476 58 29.659 58zm.001-21.076a2.587 2.587 0 01-1.845-.772l-7.826-7.909a2.655 2.655 0 010-3.728 2.588 2.588 0 013.689 0l5.982 6.045L56.512 3.424a2.588 2.588 0 013.689 0 2.653 2.653 0 010 3.728l-28.697 29a2.585 2.585 0 01-1.844.772z'/%3E%3C/svg%3E");
  border-radius: var(--border-radius);
  color: var(--color-main);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-20);
  color: var(--color-main);
  padding: 0.7em 1em;
  display: flex;
  align-items: center;
  gap: 1em;
  background-color: var(--color-white);
  border: none;
  flex-shrink: 0;
  transition: var(--transition);
}
.cta-new__button::before {
  content: "";
  width: 1.2em;
  aspect-ratio: 1/1;
  display: inline-block;
  mask: var(--icon-button) center/contain no-repeat;
  background-color: var(--color-green);
  flex-shrink: 0;
  transition: var(--transition);
}
.cta-new__button:hover {
  color: var(--color-white);
  background-color: var(--color-orange);
}
.cta-new__button:hover::before {
  background-color: var(--color-white);
}
@media screen and (min-width: 1400px) {
  .cta-new {
    margin-left: calc(var(--gap) * -1);
    margin-right: calc(var(--gap) * -1);
  }
}
@media screen and (max-width: 768px) {
  .cta-new__content {
    flex-direction: column;
    text-align: center;
    justify-content: center;
    gap: 1em;
  }
}