/* ---------- 10 · Bienvenida ---------- */
.final { padding-bottom: 0; overflow: hidden; }
.final-glow { position: absolute; inset: 0; z-index: -1; pointer-events: none; background: radial-gradient(60% 70% at 72% 50%, color-mix(in srgb, var(--sky) 20%, transparent), transparent 70%), radial-gradient(40% 50% at 18% 85%, color-mix(in srgb, var(--mint) 12%, transparent), transparent 70%); }
.final-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.3fr); gap: clamp(16px, 3vw, 48px); align-items: center; flex: 1; }
.final-copy { display: grid; gap: clamp(8px, 1.6vh, 16px); justify-items: start; }
.final-copy h2 { font-size: clamp(34px, min(5vw, 9vh), 76px); line-height: .98; letter-spacing: -.055em; }
.final-copy p { font-size: clamp(14px, 2.2vh, 18px); line-height: 1.65; max-width: 480px; }
.final-ring .visual-ring { width: min(110%, calc((100dvh - 190px) * 1.77)); margin-left: auto; margin-right: -6%; }
@media (max-width: 1179px) {
  .final { padding-bottom: 0; }
  .final .footer { padding-bottom: calc(76px + env(safe-area-inset-bottom)); }
}
@media (max-width: 900px) {
  .final-grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .final-ring { order: -1; }
  .final-ring .visual-ring { margin: 0 auto; width: min(100%, 560px); }
  .final-copy { justify-items: center; text-align: center; }
  .final-copy p { max-width: 560px; }
  .final-copy .hero-cta { justify-content: center; }
  .final-copy .hero-proof { justify-content: center; }
}
@media (max-width: 760px) {
  .final-copy h2 { font-size: clamp(34px, 11vw, 48px); }
  .final-copy p { font-size: 15px; }
  .final-copy .hero-cta .btn { flex: 1 1 100%; min-height: 48px; justify-content: center; }
}
