.tas-contact-cta {
  --tas-content-gutter: 20px;
  position: relative;
  background: var(--background-color);
  overflow: hidden;
}

.tas-contact-cta::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 120px;
  opacity: 0.08;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath fill='%2300332E' d='M0 120 L0 80 C80 70 120 40 180 50 C220 20 280 10 360 30 C400 0 480 20 520 45 C580 25 640 15 700 35 C760 20 820 30 880 50 C940 35 1000 25 1060 40 C1100 30 1140 50 1200 55 L1200 120 Z'/%3E%3C/svg%3E") center bottom / 100% 100% no-repeat;
  pointer-events: none;
}

.tas-contact-cta__inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: clamp(24px, 4vw, 48px);
  align-items: center;
  width: min(100% - calc(var(--tas-content-gutter) * 2), var(--layout-max-width));
  margin: 0 auto;
}

.tas-contact-cta__illus {
  flex-shrink: 0;
}

.tas-contact-cta__illus img {
  display: block;
  width: clamp(120px, 12vw, 180px);
  height: auto;
}

.tas-contact-cta__illus-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(100px, 10vw, 140px);
  height: clamp(100px, 10vw, 140px);
  color: var(--accent);
  font-size: clamp(3.5rem, 6vw, 5rem);
  opacity: 0.85;
}

.tas-contact-cta__text {
  margin: 0;
  max-width: 560px;
  font-size: clamp(1rem, 1.8vw, 1.25rem);
  font-weight: 500;
  line-height: 1.6;
  color: var(--primary);
}

.tas-contact-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: flex-end;
}

.tas-contact-cta__actions .tas-btn--outline {
  background: var(--white);
}

@media (max-width: 991px) {
  .tas-contact-cta__inner {
    grid-template-columns: 1fr;
    text-align: center;
    justify-items: center;
  }

  .tas-contact-cta__text {
    max-width: none;
  }

  .tas-contact-cta__actions {
    justify-content: center;
  }
}

@media (max-width: 575px) {
  .tas-contact-cta__actions {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
  }

  .tas-contact-cta__actions .tas-btn {
    justify-content: center;
    width: 100%;
  }
}
