.cta-section {
  position: relative;
  overflow: hidden;
  padding: 70px 0;
  background: linear-gradient(120deg, var(--sn-color-brand-950), var(--sn-color-brand-800));
  color: #fff;
}
.cta-section::after { content: ""; position: absolute; width: 420px; height: 420px; right: -120px; top: -210px; border-radius: 50%; border: 80px solid rgba(255,255,255,.035); }
.cta-box { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 34px; }
.cta-box h2 { margin: 0 0 8px; color: #fff; font-size: clamp(1.7rem, 3.4vw, 2.65rem); line-height: 1.25; }
.cta-box p { margin: 0; color: rgba(255,255,255,.8); }
.cta-box .eyebrow { color: #edc4cf; }

.cta-box__actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }
.cta-box__actions .button { min-width: 180px; }
.cta-phone-button { background: transparent; color: #fff; border-color: rgba(255,255,255,.58); }
.cta-phone-button:hover { color: #fff; border-color: #fff; background: rgba(255,255,255,.08); }
.cta-line-button { background:#fff; color:var(--sn-color-brand-900); border-color:#fff; }
.cta-line-button:hover { background:rgba(255,255,255,.92); color:var(--sn-color-brand-950); }
@media (max-width: 720px) {
  .cta-box { align-items: flex-start; flex-direction: column; }
  .cta-box__actions { width: 100%; display: grid; grid-template-columns: 1fr; }
  .cta-box__actions .button { width: 100%; }
}
