/* Blocco cta — replica della .cta storica: foto di sfondo NUDA (nessun velo,
   come in produzione), contenuto centrato in colonna, bottone .big. */

.b-cta--sfondo {
  position: relative;
  overflow: hidden;
}

.b-cta__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.b-cta__bg-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.b-cta--sfondo .b-cta__inner {
  position: relative;
  z-index: 2;
}

.b-cta__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

/* Box CTA a metà pagina: pannello blu a gradiente, pensato per
   spezzare la lettura e convertire (bianco su blu, doppia azione) */
.b-cta__inner--box {
  padding: clamp(2rem, 5vw, 3.5rem);
  border: 0;
  border-radius: var(--radius-lg);
  background:
    radial-gradient(560px 320px at 85% -30%, rgb(255 255 255 / 0.16), transparent 65%),
    linear-gradient(150deg, var(--c-primary), var(--c-primary-deep));
  box-shadow: 0 18px 40px -18px rgb(0 74 141 / 0.55);
}

.b-cta__inner--box .b-cta__title {
  color: #fff;
}

.b-cta__inner--box .b-cta__text {
  color: rgb(255 255 255 / 0.92);
}

.b-cta__inner--box .btn {
  background: #fff;
  color: var(--c-primary-dark);
  box-shadow: 0 10px 13px -10px rgb(0 0 0 / 0.35);
}

.b-cta__inner--box .btn:hover {
  background: #fff;
  color: var(--c-primary-deep);
  transform: translateY(-1px);
}

.b-cta__inner--box .btn--outline {
  background: transparent;
  border-color: #fff;
  color: #fff;
  box-shadow: none;
}

.b-cta__inner--box .btn--outline:hover {
  background: #fff;
  color: var(--c-primary-dark);
}

/* Sottotitolo: l'h3 storico della cta (20px/700, mb 30) */
.b-cta__text {
  margin: 0 0 1.875rem;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.2;
  color: var(--c-text);
}

.b-cta__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--sp-3);
}

/* Sfondo chiaro (le onde storiche della pagina preventivo): testo scuro
   come in produzione (#4d4d4d), pulsante gradiente invariato */
.b-cta--scuro .b-cta__title,
.b-cta--scuro .b-cta__text {
  color: var(--c-text);
}

.b-cta--scuro .b-cta__tel--banner {
  border-color: var(--c-primary-dark);
  color: var(--c-primary-dark);
}

.b-cta--scuro .b-cta__tel--banner:hover {
  background: var(--c-primary-dark);
  color: #fff;
}

/* Telefono su banner: outline bianco */
.b-cta__tel--banner {
  background: transparent;
  border: 2px solid #fff;
  color: #fff;
  box-shadow: none;
}

.b-cta__tel--banner:hover {
  background: #fff;
  border-color: #fff;
  color: var(--c-primary-dark);
}

@media (max-width: 48rem) {
  .b-cta__title {
    font-size: 1.6875rem; /* 27px misurati sullo storico mobile */
  }
}
