.cta-section {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 34.5rem;
  padding: var(--container-space);
  border-bottom: 1px solid var(--border-color);
}

.cta-section-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2rem;
}

.cta-section-container h2 {
  font-size: 4.5rem;
  font-family: var(--font-family-headline);
  letter-spacing: -0.09rem;
  text-align: center;
  color: var(--main-text-color);
}

.cta-headline-small {
  max-width: 45rem;
}
.single-post .cta-headline-small {
  max-width: 100%;
}

.cta-headline-large {
  max-width: 72rem;
}

.cta-section-container .hw-button {
  background-color: var(--main-background);
}

.cta-section-gradient-hover {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: -2;
}

.cta-section-gradient-hover div {
  position: absolute;
  transition:
    opacity 0.3s,
    height 0.3s,
    top 0.3s,
    right 0.3s,
    width 0.3s,
    bottom 0.3s,
    left 0.3s;
  visibility: hidden;
}

@media (max-width: 992px) {
  .cta-section {
    min-height: auto;
    padding: 5rem var(--container-space);
  }

  .cta-section-container h2 {
    font-size: 2.5rem;
  }
}

@media (max-width: 768px) {
  .cta-section-container {
    gap: 1.5rem;
  }
  .cta-section-container h2 {
    font-size: 2rem;
  }
  .cta-headline-large br {
    display: none;
  }
}
