:root{
  --vs-cta-bg:#06080d;
  --vs-cta-text:#f4f7ff;
  --vs-cta-muted:rgba(244,247,255,.72);
  --vs-cta-muted-2:rgba(244,247,255,.56);

  --vs-cta-border:rgba(255,255,255,.12);
  --vs-cta-border-strong:rgba(255,255,255,.20);

  --vs-cta-primary:#7bc7ff;
  --vs-cta-secondary:#8b73ff;
  --vs-cta-accent:#58f0d2;

  --vs-cta-shadow:0 24px 70px rgba(0,0,0,.42);
  --vs-cta-radius:28px;
  --vs-cta-max:1180px;
}

.vs-final-cta,
.vs-final-cta *{
  box-sizing:border-box;
}

.vs-final-cta{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  padding:88px 0 96px;
  background:
    radial-gradient(circle at 12% 18%, rgba(123,199,255,.10), transparent 22%),
    radial-gradient(circle at 88% 20%, rgba(139,115,255,.10), transparent 22%),
    radial-gradient(circle at 50% 100%, rgba(88,240,210,.07), transparent 26%),
    linear-gradient(180deg, #06080d 0%, #090c12 44%, #05070b 100%);
}

.vs-final-cta__bg{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:-1;
}

.vs-final-cta__bg::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.022) 1px, transparent 1px);
  background-size:42px 42px;
  mask-image:radial-gradient(circle at center, rgba(0,0,0,.88), transparent 88%);
  opacity:.20;
}

.vs-final-cta__container{
  width:min(calc(100% - 32px), var(--vs-cta-max));
  margin:0 auto;
}

.vs-final-cta__card{
  position:relative;
  overflow:hidden;
  border-radius:var(--vs-cta-radius);
  padding:40px 34px;
  border:1px solid var(--vs-cta-border);
  background:
    radial-gradient(circle at top right, rgba(123,199,255,.10), transparent 30%),
    radial-gradient(circle at bottom left, rgba(139,115,255,.08), transparent 24%),
    linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.05));
  backdrop-filter:blur(22px) saturate(165%);
  -webkit-backdrop-filter:blur(22px) saturate(165%);
  box-shadow:
    0 24px 50px -14px rgba(0,0,0,.58),
    inset 0 1px 0 rgba(255,255,255,.12);
}

.vs-final-cta__card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(255,255,255,.16), rgba(255,255,255,.03) 28%, rgba(255,255,255,0) 60%);
  opacity:.58;
  pointer-events:none;
}

.vs-final-cta__glow{
  position:absolute;
  border-radius:50%;
  filter:blur(18px);
  pointer-events:none;
}

.vs-final-cta__glow--a{
  top:-40px;
  right:-30px;
  width:220px;
  height:220px;
  background:radial-gradient(circle, rgba(123,199,255,.18), transparent 70%);
}

.vs-final-cta__glow--b{
  left:-20px;
  bottom:-40px;
  width:220px;
  height:220px;
  background:radial-gradient(circle, rgba(88,240,210,.12), transparent 70%);
}

.vs-final-cta__content{
  position:relative;
  z-index:1;
  max-width:860px;
  margin:0 auto;
  text-align:center;
}

.vs-final-cta__eyebrow{
  margin:0 0 12px;
  color:#d8e9ff;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.vs-final-cta__title{
  margin:0 0 14px;
  color:var(--vs-cta-text);
  font-size:clamp(2.05rem, 3.4vw, 3.5rem);
  line-height:.98;
  letter-spacing:-.05em;
  font-weight:950;
  text-wrap:balance;
}

.vs-final-cta__subtitle{
  margin:0 auto;
  max-width:760px;
  color:var(--vs-cta-muted);
  font-size:1rem;
  line-height:1.76;
  text-wrap:pretty;
}

.vs-final-cta__trust{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  margin-top:22px;
}

.vs-final-cta__trust span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:38px;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.09);
  color:var(--vs-cta-muted);
  font-size:.9rem;
  font-weight:800;
}

.vs-final-cta__trust span::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:linear-gradient(135deg, var(--vs-cta-primary), var(--vs-cta-accent));
  flex:none;
}

.vs-final-cta__actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:14px;
  margin-top:26px;
}

.vs-final-cta__btn{
  appearance:none;
  border:none;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:56px;
  padding:0 22px;
  border-radius:18px;
  font-size:.95rem;
  font-weight:900;
  letter-spacing:-.01em;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
  white-space:nowrap;
}

.vs-final-cta__btn:hover{
  transform:translateY(-2px);
}

.vs-final-cta__btn:focus-visible{
  outline:2px solid rgba(123,199,255,.8);
  outline-offset:3px;
}

.vs-final-cta__btn svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
  flex:none;
}

.vs-final-cta__btn--primary{
  color:#06101a;
  background:linear-gradient(135deg, #ffffff 0%, #afd9ff 55%, #78ffe7 100%);
  box-shadow:0 18px 40px rgba(123,199,255,.24);
}

.vs-final-cta__btn--ghost{
  color:#fff;
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.05));
  backdrop-filter:blur(14px) saturate(150%);
  -webkit-backdrop-filter:blur(14px) saturate(150%);
  box-shadow:0 14px 34px rgba(0,0,0,.18);
}

@media (max-width: 768px){
  .vs-final-cta{
    padding:76px 0 84px;
  }

  .vs-final-cta__container{
    width:min(calc(100% - 20px), var(--vs-cta-max));
  }

  .vs-final-cta__card{
    padding:28px 18px;
    border-radius:24px;
  }

  .vs-final-cta__actions{
    flex-direction:column;
  }

  .vs-final-cta__btn{
    width:100%;
  }
}

@media (prefers-reduced-motion: reduce){
  .vs-final-cta__btn{
    transition:none !important;
  }

  .vs-final-cta__btn:hover{
    transform:none !important;
  }
}